From 6840a8624ade1697ae0cbbc04295387b6dfe7103 Mon Sep 17 00:00:00 2001 From: Soufyan Bargach Date: Thu, 26 Mar 2020 09:52:18 +0100 Subject: [PATCH 1/2] Add option to add auto detect encoding --- README.md | 27 ++++++++++++++----- .../cmtelecom/text/sdk/MessageBuilder.java | 19 ++++++++++++- .../com/cmtelecom/text/sdk/models/Body.java | 5 ++++ target/maven-archiver/pom.properties | 2 +- 4 files changed, 45 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index be3f6ba..b2d9b33 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,22 @@ By calling `SendTextMessage` and providing message text, sender name, recipient client.sendTextMessage("Message Text", "TestSender", new String[] {"00316012345678"}); ``` +## Sending a message with auto detect encoding +By using the `MessageBuilder` it is possible to send messages with auto detect encoding, +It is possible to let our gateway detect the encoding for you by including the type: auto setting. +In case it detects characters that are not part of the GSM character set, the message will be delivered as Unicode. + +see our API docs for more info https://docs.cmtelecom.com/en/api/business-messaging-api/1.0/index/ + +```cs + MessagingClient client = new MessagingClient("YourProductToken"); + MessageBuilder builder = new MessageBuilder("Message Text", "auto", "TestSender", new String[] {"0031636170815"}); + + Message message = builder.Build(); + + client.sendMessage(message); +``` ## Sending a rich message By using the `MessageBuilder` it is possible to create images with media for channels such as WhatsApp and Viber @@ -72,9 +87,9 @@ Sending an message returns the response body MessagingClient client = new MessagingClient("YourProductToken"); -MessageBuilder builder = new MessageBuilder("Template Test", "CM.COM", new String[] {"0031636170815"}); + MessageBuilder builder = new MessageBuilder("Template Test", "CM.COM", new String[] {"0031636170815"}); -builder.WithAllowedChannels(new Channel[] {Channel.WhatsApp}); + builder.WithAllowedChannels(new Channel[] {Channel.WhatsApp}); TemplateMessage template = new TemplateMessage(); @@ -91,14 +106,14 @@ builder.WithAllowedChannels(new Channel[] {Channel.WhatsApp}); "image/png"))}), new TemplateComponents("body", new TemplateParameters[] { new TemplateParameters("text", "TestMessage"), - new TemplateParameters("text", "CM.Com")})}; + new TemplateParameters("text", "Dutch GP")})}; -builder.WithTemplate(template); + builder.WithTemplate(template); -Message message = builder.Build(); + Message message = builder.Build(); -client.sendMessage(message); + client.sendMessage(message); ``` diff --git a/src/main/java/com/cmtelecom/text/sdk/MessageBuilder.java b/src/main/java/com/cmtelecom/text/sdk/MessageBuilder.java index dcdfcdb..76d42ea 100644 --- a/src/main/java/com/cmtelecom/text/sdk/MessageBuilder.java +++ b/src/main/java/com/cmtelecom/text/sdk/MessageBuilder.java @@ -37,9 +37,26 @@ public MessageBuilder(String messageText, String from,String[] to) } this.message = new Message(new Body(messageText), from, recipientList); - } + /// + /// Creates a new MessageBuilder with auto detect encoding + /// + /// + /// + /// + public MessageBuilder(String messageText, String type, String from,String[] to) + { + List recipientList = new ArrayList<>(); + for (String number : to) { + Recipient r = new Recipient(); + r.Number = number; + recipientList.add(r); + + } + + this.message = new Message(new Body(messageText, type), from, recipientList); + } /// /// Constructs the message. diff --git a/src/main/java/com/cmtelecom/text/sdk/models/Body.java b/src/main/java/com/cmtelecom/text/sdk/models/Body.java index 0449f00..a194d30 100644 --- a/src/main/java/com/cmtelecom/text/sdk/models/Body.java +++ b/src/main/java/com/cmtelecom/text/sdk/models/Body.java @@ -35,4 +35,9 @@ public class Body { public Body(String content) { this.Content = content; } + + public Body(String content, String type) { + this.Content = content; + this.Type = type; + } } diff --git a/target/maven-archiver/pom.properties b/target/maven-archiver/pom.properties index 7a0b125..bbe6dab 100644 --- a/target/maven-archiver/pom.properties +++ b/target/maven-archiver/pom.properties @@ -1,5 +1,5 @@ #Generated by Maven -#Tue Feb 04 16:29:52 CET 2020 +#Thu Mar 26 09:32:54 CET 2020 groupId=com.github.cmdotcom artifactId=text-sdk-java version=1.0-SNAPSHOT From 4365bad20ead517fb130ed2f84d485e23b2afdc3 Mon Sep 17 00:00:00 2001 From: Soufyan Bargach Date: Thu, 26 Mar 2020 10:00:39 +0100 Subject: [PATCH 2/2] update read me --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b2d9b33..ac3bfc5 100644 --- a/README.md +++ b/README.md @@ -38,7 +38,7 @@ see our API docs for more info https://docs.cmtelecom.com/en/api/business-messag ```cs MessagingClient client = new MessagingClient("YourProductToken"); - MessageBuilder builder = new MessageBuilder("Message Text", "auto", "TestSender", new String[] {"0031636170815"}); + MessageBuilder builder = new MessageBuilder("Message Text", "auto", "TestSender", new String[] {"00316012345678"}); Message message = builder.Build();