--- sidebar_position: 1 --- # Send text message Sends a text message to a chat or channel
*Function SendTextMessage(Val Token, Val Text, Val UserID, Val SendingToChannel, Val Keyboard = "") Export* | Parameter | CLI option | Type | Destination | |-|-|-|-| | Token | --token | String | Token | | Text | --text | String | Message text | | UserID | --user | String, Number | User ID. For channel > administrator, for bot > recipient | | SendingToChannel | --ischannel | Boolean | Sending to channel or bot chat | | Keyboard | --keyboard | Structure Of String | See CreateKeyboardFromArrayButton | Returns: Map Of KeyAndValue - serialized JSON response from Viber ```bsl title="Code example" BotToken = "523b5b25ed27e6ec-111111111111111-2222222222222222"; UserID = "d3jxe1111111111jYGgZg=="; ButtonArray = New Array; ButtonArray.Add("Button 1"); ButtonArray.Add("Button 2"); ButtonArray.Add("Button 3"); Keyboard = OPI_Viber.CreateKeyboardFromArrayButton(ButtonArray); Response = OPI_Viber.SendTextMessage(BotToken, "Hello", UserID, False, Keyboard); //Map Response = OPI_Tools.JSONString(Response); //JSON string ``` ```sh title="CLI command example" oint viber SendTextMessage --token %token% --text %text% --user "d3jxe1111111111jYGgZg" --ischannel %ischannel% --keyboard %keyboard% ``` ```json title="Result" { "chat_hostname": "SN-CHAT-10_", "message_token": 5925400810709476620, "status_message": "ok", "status": 0 } ```