[Freeswitch-users] How to encapsulate binary code to SIP body

Steven Ayre steveayre at gmail.com
Wed Jun 5 10:44:20 MSD 2013


Just google base64... It's a way on encoding binary data using only
printable ASCII characters. There are other ways to encode data too.

If you're actually wanting to send the raw data though I've just read up
the sofia api...

Create a sip_payload_t initialised by SIPTAG_PAYLOAD_INIT2(data,length) and
then use it with the SIPTAG_PAYLOAD() macro.

That'll handle \0 bytes correctly. Passing the data to SIPTAG_PAYLOAD_STR()
won't as it'll treat it as a null terminated string.

-Steve


On Wednesday, June 5, 2013, windy wrote:

> **
> Hi, Steve
>
> The data is not very large. Normall it's an ISUP message and no more than
> 256 bytes.
>
> For the base64 encode, can you give an example?
>
>
> Thanks
>  windy
> ------------------------------
>   2013-06-05
> ------------------------------
> *发件人:* Steven Ayre
> *发送时间:* 2013-06-05  11:57:05
> *收件人:* FreeSWITCH Users Help
> *抄送:*
> *主题:* Re: [Freeswitch-users] How to encapsulate binary code to SIP body
>  Does it have to be sent as binary? How about using something like base64
> to encode it first?
>
> You also want to be careful sending a large amount of data in this way. If
> your packet gets larger than the PMTU then you'll get packet fragmentation
> which SIP/UDP doesn't handle well.
>
> -Steve
>
>
>
> On 5 June 2013 03:47, windy <xiaofengcanyuexp at 163.com <javascript:_e({},
> 'cvml', 'xiaofengcanyuexp at 163.com');>> wrote:
>
>> **
>> Dear support
>>
>> I now need to encapsulate one binary array to FS SIP body. To be specific:
>> (1) I encoded some info when getting incoming 183.
>> (2) The encoded info need to be encapsulated as one of content in SIP
>> body like
>>       content-type=application/test
>>       content-length=74
>>       --boundarycode
>>       1233444444444 --------------------binary code
>>
>> I'd like to add to the sipbody by using:
>>      nua_Respond(...
>>                         ...
>>                       SIPTAG_PAYLOAD_STR(), RAG_END).
>>
>> Well, As you know, SIPTAG_PAYLOAD_STR is for string, it will truncate the
>> binary array before it encapsulats the binary code to SIP body.
>>
>>
>> Is there any way to encapsulated my binary array to the SIP boday with
>> "nua_Respond"?
>>
>>
>> Thanks
>> Windy
>>
>> _________________________________________________________________________
>> Professional FreeSWITCH Consulting Services:
>> consulting at freeswitch.org <javascript:_e({}, 'cvml',
>> 'consulting at freeswitch.org');>
>> http://www.freeswitchsolutions.com
>>
>> 
>> 
>>
>> Official FreeSWITCH Sites
>> http://www.freeswitch.org
>> http://wiki.freeswitch.org
>> http://www.cluecon.com
>>
>> FreeSWITCH-users mailing list
>> FreeSWITCH-users at lists.freeswitch.org <javascript:_e({}, 'cvml',
>> 'FreeSWITCH-users at lists.freeswitch.org');>
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>> http://www.freeswitch.org
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20130605/4a3e7047/attachment-0001.html 


Join us at ClueCon 2011 Aug 9-11, 2011
More information about the FreeSWITCH-users mailing list