Forum

Unicorn not friendly with characters in emails and some osc strings

alpha

#1

hey

i have troubles with non-latin (russian) unicorn characters sending by email from vvvv or recived with osc.
looks like usual encoding trouble, but how can i play around encoding now?

thanks


#2

can you provide a patch?

basically OSC does not support unicorn strings. but vvvv is supposed to support anything now. show your data!


#3

ohh that’s not so easy to do)

first, use pretty old but perfect SendMail module by Kalle
kalle.modules.network
direct link tiki-download_file.php?fileId=1338
send email using it. if you’ll set message-charset=utf-8 in sendmail.exe everything is going to be fine for the email body, but not for email subject now!
i know this is not vvvv trouble, but before unicorn i just sent utf-8 string to the subject and had no worries. how can do so again? convert from unicorn to utf-8?

btw phlegma’s sendemail node not working for me here. it crashes vvvv here.

second, recieving data with OSC… i’m playing around mrmr project
http://mrmr.noisepages.com/mrmr-interface-protocol/
it sends data in osc readable format and has text input field, so i can type on ios device and send result in vvvv. ok for latin, not ok for non-latin. will attach screenshot later

thanks.


#4

@email
the email subject is inside the email header which must contain ASCII characters only (7-bit). you’ll therefor need to encode your utf-8 string with either quoted-printables or base64.
see this link for an example. funny that you say it worked before unicorn. no idea how that was possible.
note that base64 and quoted-printables are a way to encode binary data (sequence of bytes expressed in vvvv with the new raw type) in ASCII characters.
so right method would probably be
vvvv string -> AsRaw (with utf-8 encoding) -> Encode (Base64 or Quoted-Printables) -> base64 or quoted-printable encoded string (valid in an email header as it only contains 7-bit ASCII characters)
the other direction would be
base64 or quoted-printable encoded string -> Decode (Base64 or QP) -> AsString (utf-8) -> vvvv string

BUT: you won’t find those Encode/Decode nodes i mentioned. are there any nodes in vvvv which somehow expose this functionality?

@osc
as joreg said, there’s no built in support for unicode in osc. what do you mean exactly by typing something in your device in latin or non-latin. does this app give you the ability to chose an encoding? if not, what encoding does it use? i suppose some 8-bit ansi encoding, like iso-8859-1 or win-1252. or iso-8859-5/win-1251 (cyrillic) in your case?
the osc node as it is written right now takes a string as input. the UDP (Server String) module is set to win-1252 by default. maybe that one should be set to “system default” too. does it help if you set win-1251/iso-8859-5 or the encoding used by your iphone app on the AsString (Raw) node inside the UDP module?


#5

Elias thank you for detailed replay.
@email
of course you right, subject always was ascii.
anyway it was a trouble before yours tip of using raw data.
this type of convert works here:

ok for sendemail.exe and looks pretty readable at iphone

@osc
continue playing around, but guess we’ll solve it in some other way.

thanks again.


#6

just to let you know. SendEmail (Network) is fixed. shouldn’t crash anymore and should also deal just fine with all the unicorn stuff (if encoding pin is set to one of them of course).