Язык Wolfram Language

Сеть каналов связи

Система мгновенных сообщений с произвольным содержанием

В рабочей сессии на Wolfram Desktop, загрузите пакет, который создает мгновенный обмен сообщениями через демо-канал ( "WIM") и начните получать сообщения через данный канал.

In[1]:=
Click for copyable input
Needs["DemoChannels`WIM`"]

Загрузите пакет, который создает демо-канал для мгновенного обмена сообщениями( "WIM") и начните прослушивать сообщения.

In[2]:=
Click for copyable input
channel = CreateWIMChannel[]
Out[2]=
In[3]:=
Click for copyable input
listener = ChannelListen[channel]
Out[3]=

Отправьте себе мгновенное сообщение, и оно отобразится в новом диалоговом окне.

In[4]:=
Click for copyable input
ChannelSend["WIM", "Hi there."]
Out[4]=
Out[5]=

Прикрепите документ к сообщению.

In[6]:=
Click for copyable input
ChannelSend["WIM", {"Sending a notebook.", InputNotebook[]}]
Out[6]=
Out[7]=

Другие пользователи могут посылать вам мгновенные сообщения с помощью ссылки на ваш канал.

In[8]:=
Click for copyable input
yourWIM = $WolframID <> ":WIM"
Out[8]=
In[9]:=
Click for copyable input
ChannelSend[yourWIM, "hello"]
Out[9]=

Либо на ваш WIM URL.

In[10]:=
Click for copyable input
listener["URL"]
Out[10]=
In[11]:=
Click for copyable input
listener["URL"]; ChannelSend[%, "another message"]
Out[11]=

Любой пользователь может также послать вам сообщение через веб-браузер (или любой другой клиент HTTP), сделав запрос HTTP на следующий URL.

In[12]:=
Click for copyable input
URLBuild[listener["URL"], {"operation" -> "send", "Message" -> "yet another message"}]
Out[12]=
In[13]:=
Click for copyable input
URLBuild[listener["URL"], {"operation" -> "send", "Message" -> "yet another message"}]; URLFetch[%]
Out[13]=

Для того, чтобы ответить на входящие сообщения от других пользователей, необходимо разрешить связь через каналы пользователей.

In[14]:=
Click for copyable input
Unprotect[$AllowExternalChannelFunctions]; $AllowExternalChannelFunctions = True;

Приостановите прослушивание и восстановите настройки безопасности.

In[15]:=
Click for copyable input
RemoveChannelListener[listener]
Out[15]=
In[16]:=
Click for copyable input
$AllowExternalChannelFunctions = False; Protect[$AllowExternalChannelFunctions];

Родственные примеры

de en es fr ja ko pt-br zh