Google Translator: Difference between revisions
Jump to navigation
Jump to search
Ugleh Ulrik (talk | contribs) No edit summary |
HEN Streeter (talk | contribs) No edit summary |
||
| Line 17: | Line 17: | ||
string name; | string name; | ||
string somestring; | string somestring; | ||
default | default | ||
{ | { | ||
| Line 46: | Line 44: | ||
somestring = message; | somestring = message; | ||
if (name == llKey2Name(llGetOwner())){ | if (name == llKey2Name(llGetOwner())){ | ||
transtring = | transtring = llEscapeURL(message); | ||
http_request_id = llHTTPRequest("http://translate.google.com/translate_a/t?client=t&text=" + transtring + "&hl=en&sl=es&tl=en&pc=0", [], ""); | http_request_id = llHTTPRequest("http://translate.google.com/translate_a/t?client=t&text=" + transtring + "&hl=en&sl=es&tl=en&pc=0", [], ""); | ||
llSetObjectName(name); | llSetObjectName(name); | ||
Revision as of 14:07, 23 April 2010
| LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Google Translator by Ugleh Ulrik
Google Translator keeps their translated data in a Array. You can see this by looking at the HTTPRequests.
The URL is this
http://translate.google.com/translate_a/t?client=t&text=words here&hl=en&sl=es
This will make it go from Spanish to English. Then all you need to do is do a string replacement.
<lsl>
key http_request_id;
string transtring = "";
string nothing = "";
string name;
string somestring;
default {
state_entry()
{
llListen(0, "", NULL_KEY, "");
}
http_response(key request_id, integer status, list metadata, string body)
{
if (request_id == http_request_id)
{
list trans1 = llParseString2List(body, ["\"orig\""], []);
transtring = strReplace(llList2String(trans1,0), "{\"sentences\":[{\"trans\":\"", "");
nothing = strReplace(transtring, "\",", "");
nothing = strReplace(nothing, ",", "");
nothing = strReplace(nothing, "\\" + "\"", "\"");
if (somestring != nothing){
llSay(0, nothing);
}
llSetObjectName("es2en Translator");
}
}
listen(integer channel, string name, key id, string message)
{
somestring = message;
if (name == llKey2Name(llGetOwner())){
transtring = llEscapeURL(message);
http_request_id = llHTTPRequest("http://translate.google.com/translate_a/t?client=t&text=" + transtring + "&hl=en&sl=es&tl=en&pc=0", [], "");
llSetObjectName(name);
}
}
} </lsl>