<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>GLU.USSD &#8211; GLU Global</title>
	<atom:link href="https://glu.global/article-categories/glu-ussd/feed/" rel="self" type="application/rss+xml" />
	<link>https://glu.global</link>
	<description>Innovation at Speed</description>
	<lastBuildDate>Mon, 06 May 2024 07:46:41 +0000</lastBuildDate>
	<language>en-GB</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://glu.global/wp-content/uploads/2022/01/cropped-favicon-1-32x32.png</url>
	<title>GLU.USSD &#8211; GLU Global</title>
	<link>https://glu.global</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>USSD Simulator</title>
		<link>https://glu.global/glu-guide/ussd-simulator/</link>
		
		<dc:creator><![CDATA[Carol Whyte]]></dc:creator>
		<pubDate>Thu, 26 Jan 2023 10:10:17 +0000</pubDate>
				<guid isPermaLink="false">https://glu.global/?post_type=ht_kb&#038;p=3315</guid>

					<description><![CDATA[The USSD simulator allows the user to experience the USSD menu using a device simulator. This article describes how to setup and use the USSD simulator. 1. Check Connectivity Your application needs to be running in order to use the simulator. Complete the host and port to point to where the application is currently running. [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>The USSD simulator allows the user to experience the USSD menu using a device simulator. This article describes how to setup and use the USSD simulator.</p>



<h2 class="wp-block-heading">1. <strong>Check Connectivity</strong></h2>



<p>Your application needs to be running in order to use the simulator. Complete the host and port to point to where the application is currently running. <strong>The endpoint where your application will be running needs to be accessible to the GLU console to ensure the simulator will work</strong>. Test the connectivity to ensure that the simulator has access to the running application.</p>



<p><br><br>It may be necessary to open the correct port in your firewall or use some other network mechanism to ensure the GLU Console has access.<br><br></p>



<figure class="wp-block-image size-full"><img fetchpriority="high" decoding="async" width="416" height="156" src="https://glu.global/wp-content/uploads/2023/01/image-61.png" alt="" class="wp-image-3325" srcset="https://glu.global/wp-content/uploads/2023/01/image-61.png 416w, https://glu.global/wp-content/uploads/2023/01/image-61-300x113.png 300w, https://glu.global/wp-content/uploads/2023/01/image-61-50x19.png 50w" sizes="(max-width: 416px) 100vw, 416px" /></figure>



<h2 class="wp-block-heading"><br><br>2. <strong>Select Configuration of Simulator</strong></h2>



<p><br><br>In the configuration of the simulator, the user must select the API and transaction which will be simulated. This will auto-populate values from the menu builder setup during configuration. In the payload, it is important to ensure that the ${input} parameter (whatever parameter is set as the input parameter) is set as such. <br><br></p>



<p><strong>Step 1: </strong>The input parameter selected on the configuration. Parameter name = input<br><br></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img decoding="async" width="538" height="355" src="https://glu.global/wp-content/uploads/2023/01/image-63.png" alt="" class="wp-image-3327" srcset="https://glu.global/wp-content/uploads/2023/01/image-63.png 538w, https://glu.global/wp-content/uploads/2023/01/image-63-300x198.png 300w, https://glu.global/wp-content/uploads/2023/01/image-63-50x33.png 50w" sizes="(max-width: 538px) 100vw, 538px" /></figure></div>


<p><br><br><strong>Step 2:</strong> The payload used for the simulator is setup here. For ease of use GLU suggest defining the input parameter with the device input set &#8211;<em> ${input}</em>.<br><br></p>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="589" src="https://glu.global/wp-content/uploads/2023/01/image-66-1024x589.png" alt="" class="wp-image-3330" srcset="https://glu.global/wp-content/uploads/2023/01/image-66-1024x589.png 1024w, https://glu.global/wp-content/uploads/2023/01/image-66-300x173.png 300w, https://glu.global/wp-content/uploads/2023/01/image-66-768x442.png 768w, https://glu.global/wp-content/uploads/2023/01/image-66-50x29.png 50w, https://glu.global/wp-content/uploads/2023/01/image-66.png 1217w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure></div>


<p><br><br><strong>Step 3:</strong>  The request payload for the simulator will be pulled in when launching the simulator. If step 1 and 2 are completed above, there is no need to edit the payload in the simulator. <br><br></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="395" height="716" src="https://glu.global/wp-content/uploads/2023/01/image-62.png" alt="" class="wp-image-3326" srcset="https://glu.global/wp-content/uploads/2023/01/image-62.png 395w, https://glu.global/wp-content/uploads/2023/01/image-62-166x300.png 166w, https://glu.global/wp-content/uploads/2023/01/image-62-28x50.png 28w" sizes="auto, (max-width: 395px) 100vw, 395px" /></figure></div>


<h2 class="wp-block-heading"><br><br>3. <strong>Simulating the user input and showing a result</strong></h2>



<p><br><br>The user can enter the shortcode into the device. The request payload represents what the gateway will send to the GLU.Engine. The appropriate menu will be displayed on the device. The user can submit the relevant values and commit the submit by using the Enter key and then can test by viewing the USSD string to confirm success.<br><br></p>



<p>The response payload represents the payload that will be returned to the USSD gateway.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>USSD Management Models</title>
		<link>https://glu.global/glu-guide/synchronous-and-asynchronous-models/</link>
		
		<dc:creator><![CDATA[Carol Whyte]]></dc:creator>
		<pubDate>Wed, 25 Jan 2023 11:37:56 +0000</pubDate>
				<guid isPermaLink="false">https://glu.global/?post_type=ht_kb&#038;p=3092</guid>

					<description><![CDATA[There are three different models that apply to the way USSD Gateways interact with USSD Menu Servers, all types are supported within the GLU USSD Menu builder and the underlying GLU.Engine. The USSD Gateway plays a crucial role in the USSD communication process. It acts as the intermediary between the user and the USSD Menu [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>There are three different models that apply to the way USSD Gateways interact with USSD Menu Servers, all types are supported within the GLU USSD Menu builder and the underlying GLU.Engine. <br><br>The USSD Gateway plays a crucial role in the USSD communication process. It acts as the intermediary between the user and the USSD Menu Server, managing the USSD session and routing requests and responses between the two.<br><br>In all three scenarios described below, the USSD Gateway is responsible for managing the USSD session between the user and the USSD Menu Server, including routing requests and displaying responses to the user. The USSD Menu Server is responsible for processing the requests and sending appropriate responses back to the USSD Gateway.</p>



<p></p>



<p></p>



<h2 class="wp-block-heading"><strong>Type 1: Acknowledge is ON, and respond back to separate URL</strong></h2>



<p>This design is used when the USSD gateway requires an ACK message to be returned when the request is received. The ACK is returned in response to the incoming request, and the final USSD response is sent back to a different endpoint.</p>



<p></p>


<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="982" height="539" src="https://glu.global/wp-content/uploads/2023/01/image-18.png" alt="" class="wp-image-3118" style="width:800px" srcset="https://glu.global/wp-content/uploads/2023/01/image-18.png 982w, https://glu.global/wp-content/uploads/2023/01/image-18-300x165.png 300w, https://glu.global/wp-content/uploads/2023/01/image-18-768x422.png 768w, https://glu.global/wp-content/uploads/2023/01/image-18-50x27.png 50w" sizes="auto, (max-width: 982px) 100vw, 982px" /></figure></div>


<p></p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="454" src="https://glu.global/wp-content/uploads/2023/01/image-25-1024x454.png" alt="" class="wp-image-3133" style="width:800px" srcset="https://glu.global/wp-content/uploads/2023/01/image-25-1024x454.png 1024w, https://glu.global/wp-content/uploads/2023/01/image-25-300x133.png 300w, https://glu.global/wp-content/uploads/2023/01/image-25-768x340.png 768w, https://glu.global/wp-content/uploads/2023/01/image-25-50x22.png 50w, https://glu.global/wp-content/uploads/2023/01/image-25.png 1472w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p></p>



<p></p>



<h2 class="wp-block-heading"><strong>Type 2: Acknowledge OFF and respond back to different endpoint</strong></h2>



<p>It is possible to specify the response endpoint as a different endpoint to the incoming request. This different endpoint can be defined by selecting the correct connector and defining the relevant path or context name (response back url).</p>



<p></p>


<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="1011" height="493" src="https://glu.global/wp-content/uploads/2023/01/image-20.png" alt="" class="wp-image-3120" style="width:800px" srcset="https://glu.global/wp-content/uploads/2023/01/image-20.png 1011w, https://glu.global/wp-content/uploads/2023/01/image-20-300x146.png 300w, https://glu.global/wp-content/uploads/2023/01/image-20-768x375.png 768w, https://glu.global/wp-content/uploads/2023/01/image-20-50x24.png 50w" sizes="auto, (max-width: 1011px) 100vw, 1011px" /></figure></div>


<p></p>



<p></p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="397" src="https://glu.global/wp-content/uploads/2023/01/image-24-1024x397.png" alt="" class="wp-image-3131" style="width:800px" srcset="https://glu.global/wp-content/uploads/2023/01/image-24-1024x397.png 1024w, https://glu.global/wp-content/uploads/2023/01/image-24-300x116.png 300w, https://glu.global/wp-content/uploads/2023/01/image-24-768x297.png 768w, https://glu.global/wp-content/uploads/2023/01/image-24-50x19.png 50w, https://glu.global/wp-content/uploads/2023/01/image-24.png 1487w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p></p>



<h2 class="wp-block-heading"><strong>Type 3: Acknowledge OFF and respond back to the same endpoint as incoming request</strong></h2>



<p>This is a straight request and response model. The response generated in the menu builder will be sent back to the same endpoint as the incoming request.</p>



<p></p>


<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="998" height="488" src="https://glu.global/wp-content/uploads/2023/01/image-21.png" alt="" class="wp-image-3121" style="width:800px" srcset="https://glu.global/wp-content/uploads/2023/01/image-21.png 998w, https://glu.global/wp-content/uploads/2023/01/image-21-300x147.png 300w, https://glu.global/wp-content/uploads/2023/01/image-21-768x376.png 768w, https://glu.global/wp-content/uploads/2023/01/image-21-50x24.png 50w" sizes="auto, (max-width: 998px) 100vw, 998px" /></figure></div>


<p></p>



<p></p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="391" src="https://glu.global/wp-content/uploads/2023/01/image-22-1024x391.png" alt="" class="wp-image-3128" style="width:800px" srcset="https://glu.global/wp-content/uploads/2023/01/image-22-1024x391.png 1024w, https://glu.global/wp-content/uploads/2023/01/image-22-300x115.png 300w, https://glu.global/wp-content/uploads/2023/01/image-22-768x293.png 768w, https://glu.global/wp-content/uploads/2023/01/image-22-50x19.png 50w, https://glu.global/wp-content/uploads/2023/01/image-22.png 1485w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p></p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="345" src="https://glu.global/wp-content/uploads/2023/01/image-23-1024x345.png" alt="" class="wp-image-3129" style="width:800px" srcset="https://glu.global/wp-content/uploads/2023/01/image-23-1024x345.png 1024w, https://glu.global/wp-content/uploads/2023/01/image-23-300x101.png 300w, https://glu.global/wp-content/uploads/2023/01/image-23-768x259.png 768w, https://glu.global/wp-content/uploads/2023/01/image-23-50x17.png 50w, https://glu.global/wp-content/uploads/2023/01/image-23.png 1512w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>USSD API Interfaces</title>
		<link>https://glu.global/glu-guide/ussd-api-interfaces/</link>
		
		<dc:creator><![CDATA[Carol Whyte]]></dc:creator>
		<pubDate>Wed, 25 Jan 2023 11:32:35 +0000</pubDate>
				<guid isPermaLink="false">https://glu.global/?post_type=ht_kb&#038;p=3085</guid>

					<description><![CDATA[Using Redis for session management If a Redis connector is configured and assigned to this GLU.Engine, you will have the choice between using the GLU.Engine memory cache or Redis. Redis can effectively manage USSD sessions in a load-balanced environment, where each service can access the same Redis database to handle USSD menu sessions. Once this [&#8230;]]]></description>
										<content:encoded><![CDATA[
<h2 class="wp-block-heading has-medium-font-size"><strong>Using Redis for session management</strong></h2>



<p></p>



<p>If a Redis connector is configured and assigned to this GLU.Engine, you will have the choice between using the GLU.Engine memory cache or Redis. Redis can effectively manage USSD sessions in a load-balanced environment, where each service can access the same Redis database to handle USSD menu sessions. Once this connector is selected, the GLU.Engine will automatically push session details to the database, eliminating the need for further configuration.</p>



<p></p>



<p></p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="217" src="https://glu.global/wp-content/uploads/2023/05/image-1024x217.png" alt="" class="wp-image-6180" srcset="https://glu.global/wp-content/uploads/2023/05/image-1024x217.png 1024w, https://glu.global/wp-content/uploads/2023/05/image-300x63.png 300w, https://glu.global/wp-content/uploads/2023/05/image-768x162.png 768w, https://glu.global/wp-content/uploads/2023/05/image-50x11.png 50w, https://glu.global/wp-content/uploads/2023/05/image-1536x325.png 1536w, https://glu.global/wp-content/uploads/2023/05/image.png 1560w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>Defining the API</strong></h2>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="558" src="https://glu.global/wp-content/uploads/2023/01/image-12-1024x558.png" alt="" class="wp-image-3086" style="width:800px" srcset="https://glu.global/wp-content/uploads/2023/01/image-12-1024x558.png 1024w, https://glu.global/wp-content/uploads/2023/01/image-12-300x163.png 300w, https://glu.global/wp-content/uploads/2023/01/image-12-768x418.png 768w, https://glu.global/wp-content/uploads/2023/01/image-12-50x27.png 50w, https://glu.global/wp-content/uploads/2023/01/image-12.png 1032w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p></p>



<p>Here, you define the Inbound Connector responsible for receiving requests from the USSD Gateway. This connector must be pre-configured in the Connectors Tool, and once configured, it should be selected from the drop-down list.</p>



<p></p>



<p>Additionally, the following settings can be made (these would be provided to you by the USSD Gateway operator):</p>



<p></p>



<p></p>



<ul class="wp-block-list">
<li><strong>&#8216;Timeout&#8217;</strong>:  Set in seconds for the USSD Gateway can be set. (We have found this setting to be critical to the interaction and control of the session.)</li>



<li><strong>&#8216;Maximum Character Length&#8217;</strong>: This parameter determines the maximum number of characters supported by the USSD Gateway. Different gateways may support varying character lengths (e.g., some support up to 160 chars, while others may only support 120 chars). Note: &#8216;<em>Maximum Character Length</em>&#8216; can be configured per language. If your USSD menu supports multiple languages, ensure that you set the maximum characters for each language. A warning will be displayed if you fail to set it for alternate languages.</li>



<li><strong><em>&#8216;Format Line Break&#8217;</em></strong></li>
</ul>



<p></p>



<p></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>Transaction Sets</strong></h2>



<p>You can configure one or more Transaction Sets. Each Transaction Set defined should be assigned a  <strong><em>&#8216;Transaction Code&#8217;</em></strong>. Within the Configuration Panels you define the Request Payload, the Response Payload and the Handlers to direct the USSD Server on what do do with the received Request.</p>



<p></p>



<p></p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="290" src="https://glu.global/wp-content/uploads/2023/01/image-13-1024x290.png" alt="" class="wp-image-3087" style="width:800px" srcset="https://glu.global/wp-content/uploads/2023/01/image-13-1024x290.png 1024w, https://glu.global/wp-content/uploads/2023/01/image-13-300x85.png 300w, https://glu.global/wp-content/uploads/2023/01/image-13-768x218.png 768w, https://glu.global/wp-content/uploads/2023/01/image-13-50x14.png 50w, https://glu.global/wp-content/uploads/2023/01/image-13-1536x436.png 1536w, https://glu.global/wp-content/uploads/2023/01/image-13.png 1555w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p></p>



<h3 class="wp-block-heading"><strong>Request Definition</strong></h3>



<p>A Transaction Set is essentially defined by an inbound Request Payload, different Request Payload structures would typically require different Transaction Sets to be configured. This request payload would often be defined by the USSD Gateway Service.</p>



<p></p>



<p></p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="339" src="https://glu.global/wp-content/uploads/2023/01/image-14-1024x339.png" alt="" class="wp-image-3088" style="width:800px" srcset="https://glu.global/wp-content/uploads/2023/01/image-14-1024x339.png 1024w, https://glu.global/wp-content/uploads/2023/01/image-14-300x99.png 300w, https://glu.global/wp-content/uploads/2023/01/image-14-768x255.png 768w, https://glu.global/wp-content/uploads/2023/01/image-14-50x17.png 50w, https://glu.global/wp-content/uploads/2023/01/image-14-1536x509.png 1536w, https://glu.global/wp-content/uploads/2023/01/image-14.png 1560w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p></p>



<p><strong>Request parameters</strong></p>



<p></p>



<p><strong>Parameter Types:</strong></p>



<p></p>



<ul class="wp-block-list">
<li><strong>Input Data:</strong> The parameter marked as input data will be used as the input to receive the customers action on the USSD String. e.g. 2, for the user selecting 2 etc</li>



<li><strong>Device:</strong> The parameter marked as device is used to indicate the unique customer (the customers device).</li>



<li><strong>Other:</strong> Can be used for any other data that is required to be pulled from the incoming request payload.</li>



<li><strong>Short Code</strong><em>:</em> Used to indicate which parameter on the incoming request payload is marked as the short code.</li>



<li><strong>SessionID: </strong>If no specific sessionID parameter is added, USSD session is by default created using the parameter that is set as the &#8216;device&#8217; on the request parameters. Otherwise the added parameter marked as &#8216;Session ID&#8217; will be used.</li>



<li><strong>Customised Session ID:</strong> This allows you to concatenate parameters to create a customised session ID.</li>
</ul>



<h3 class="wp-block-heading"><strong>Response Definition</strong></h3>



<p>The Response Template should be used to define the response message structure that the USSD Gateway expects to receive. Within that Response Template, the variable &#8216;<em><strong>${result}</strong></em>&#8216; would be used to return the result or outcome from the USSD interaction to the USSD Gateway. So the output of the menu process, will be posted back through the &#8216;<strong><em>${result}</em></strong>&#8216; field in the response payload.</p>



<p></p>



<p></p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="331" src="https://glu.global/wp-content/uploads/2023/01/image-15-1024x331.png" alt="" class="wp-image-3089" style="width:800px" srcset="https://glu.global/wp-content/uploads/2023/01/image-15-1024x331.png 1024w, https://glu.global/wp-content/uploads/2023/01/image-15-300x97.png 300w, https://glu.global/wp-content/uploads/2023/01/image-15-768x248.png 768w, https://glu.global/wp-content/uploads/2023/01/image-15-50x16.png 50w, https://glu.global/wp-content/uploads/2023/01/image-15.png 1537w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>Transaction Handlers</strong></h2>



<p>To add a handler to the transaction, you must use the following syntax:</p>



<p></p>



<ul class="wp-block-list">
<li>Condition: ${paramName}==3 </li>



<li>Then include the menu set that should be routed to when that condition is met.</li>
</ul>



<p></p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="309" src="https://glu.global/wp-content/uploads/2023/10/image-6-1024x309.png" alt="" class="wp-image-6509" srcset="https://glu.global/wp-content/uploads/2023/10/image-6-1024x309.png 1024w, https://glu.global/wp-content/uploads/2023/10/image-6-300x91.png 300w, https://glu.global/wp-content/uploads/2023/10/image-6-768x232.png 768w, https://glu.global/wp-content/uploads/2023/10/image-6-50x15.png 50w, https://glu.global/wp-content/uploads/2023/10/image-6.png 1532w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<h2 class="wp-block-heading has-medium-font-size"><strong>Short Code Sets</strong></h2>



<p>This is where you define the USSD Short code string that will invoke the session:</p>



<p></p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="159" src="https://glu.global/wp-content/uploads/2023/01/image-51-1024x159.png" alt="" class="wp-image-3271" srcset="https://glu.global/wp-content/uploads/2023/01/image-51-1024x159.png 1024w, https://glu.global/wp-content/uploads/2023/01/image-51-300x47.png 300w, https://glu.global/wp-content/uploads/2023/01/image-51-768x119.png 768w, https://glu.global/wp-content/uploads/2023/01/image-51-50x8.png 50w, https://glu.global/wp-content/uploads/2023/01/image-51.png 1460w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p></p>



<h2 class="wp-block-heading has-medium-font-size"><strong>Long Codes and Jump Codes</strong></h2>



<p>In this example, to get to &#8220;Enquire about our Credit Service&#8221; you can do any of the following:</p>



<ul class="wp-block-list">
<li>Dial *811# then select option 10 for Airtime</li>



<li>Dial *811*10# for &#8220;Airtime&#8221;</li>



<li>Dial *811*567# to jump straight to &#8220;Airtime&#8221; &#8211; This is especially useful when going several layers deep in a USSD menu.</li>
</ul>



<p></p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="349" src="https://glu.global/wp-content/uploads/2023/01/image-50-1024x349.png" alt="" class="wp-image-3270" srcset="https://glu.global/wp-content/uploads/2023/01/image-50-1024x349.png 1024w, https://glu.global/wp-content/uploads/2023/01/image-50-300x102.png 300w, https://glu.global/wp-content/uploads/2023/01/image-50-768x262.png 768w, https://glu.global/wp-content/uploads/2023/01/image-50-50x17.png 50w, https://glu.global/wp-content/uploads/2023/01/image-50.png 1487w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>GLU.USSD Menu Builder Overview</title>
		<link>https://glu.global/glu-guide/glu-ware-menu-builder-overview/</link>
		
		<dc:creator><![CDATA[Carol Whyte]]></dc:creator>
		<pubDate>Wed, 25 Jan 2023 09:27:57 +0000</pubDate>
				<guid isPermaLink="false">https://glu.global/?post_type=ht_kb&#038;p=3050</guid>

					<description><![CDATA[The GLU.USSD Menu Builder is a Value Added Service (VAS) that is licensed separately from the Integration Platform. It enables our clients to configure and maintain their own USSD Menu&#8217;s which are then run on a USSD Server that is pre-integrated with the GLU.Engine. Phase 2 USSD Phase 2 USSD (Unstructured Supplementary Service Data) is [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>The <strong>GLU.USSD Menu Builder</strong> is a Value Added Service (VAS) that is licensed separately from the Integration Platform. It enables our clients to configure and maintain their own USSD Menu&#8217;s which are then run on a USSD Server that is pre-integrated with the GLU.Engine.</p>



<p></p>



<h1 class="wp-block-heading has-medium-font-size"><strong>Phase 2 USSD</strong></h1>



<p>Phase 2 USSD (Unstructured Supplementary Service Data) is a mobile communication technology used for two-way interaction between a mobile phone user and a service provider. It is an upgrade from phase 1 USSD, which only supports one-way communication. In phase 2 USSD, the user can initiate a session with the service provider and receive a response, making it a more interactive and dynamic system.<br><br>Additionally, Phase 2 USSD also offers enhanced security features compared to Phase 1, such as the ability to encrypt data in transit. This makes it a suitable technology for sensitive applications, such as mobile banking.<br><br>Overall, Phase 2 USSD is a powerful tool for service providers looking to offer mobile-based services to their customers in areas with limited internet connectivity. It enables efficient and secure communication and can help drive customer engagement and satisfaction.</p>



<p>The interactive nature of USSD Phase 2 allows an application to present options to a subscriber in the form of menus. These menus and the logic within them are not stored on the phone.<br><br>The menus are formatted text lists of options separated by line feed characters. On a handset, the text renders as a menu. The user responds by entering a character that corresponds with their chosen selection.<br><br></p>



<p>USSD is not a menu on the handset, it is the channel or bearer that delivers the menu text and selections. Menus are independent of the handset as well as the SIM card. The server-side application being the GLU.Ware configured USSD Menu running on the GLU USSD Sever keeps track of where in the menu structure every subscriber is at all the time.<br><br></p>



<p>Menus served over USSD should not be confused with menus and applications served by STK (Sim Tool Kit). STK is a technology embedded on the SIM card where special applications can be accessed by subscribers. With STK, the handset receives instructions from the SIM card to perform functions.<br><br></p>



<p>USSD differs from the other short message bearer, SMS, in a number of significant ways. It is not a store-and-forward bearer like SMS, but a transparent session-based bearer ideal for transacting. Information is delivered and responses obtained in real-time. Simply put, USSD is similar to speaking to someone on a phone as SMS is sending a letter.<br><br></p>



<p>USSD is also not a point-to-point bearer such as SMS. One subscriber cannot send another text using USSD unless there is a special network application offering such an application.</p>



<p></p>



<h1 class="wp-block-heading has-medium-font-size"><strong>GLU.USSD and GLU.Engine&#8217;s in Context</strong></h1>



<p>The context diagram below describes broadly the components involved in serving a USSD Menu user using GLU.Ware. The MNO side is standard typically across all MNO&#8217;s, once a USSD Session is invoked by a User, it is passed across the network until it reaches the MNO&#8217;s USSD Gateway. From there the Gateway will associated the USSD Shortcode that invoked the session with the IP address of the USSD Server API as configured in the GLU.Engine. The GLU.Engine package combines both the USSD Server component (which runs the USSD Menu as it has been configured in the GLU.Console) and the GLU Integration Engine. The GLU USSD Server is configured to expose an API to receive the inbound USSD Request from the USSD Gateway and once received and menu interactions are completed, the USSD Server is configured to pass the request payload down to the GLU Integration Engine to process the transaction.<br><br></p>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="251" src="https://glu.global/wp-content/uploads/2023/02/image-133-1024x251.png" alt="" class="wp-image-5538" srcset="https://glu.global/wp-content/uploads/2023/02/image-133-1024x251.png 1024w, https://glu.global/wp-content/uploads/2023/02/image-133-300x74.png 300w, https://glu.global/wp-content/uploads/2023/02/image-133-768x188.png 768w, https://glu.global/wp-content/uploads/2023/02/image-133-50x12.png 50w, https://glu.global/wp-content/uploads/2023/02/image-133.png 1146w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure></div>


<h1 class="wp-block-heading has-medium-font-size"><br><br><strong>GLU.USSD Config Elements</strong></h1>



<p>The Menu Builder is accessed via the &#8216;GLU.USSD&#8217; tool on the main navigation as below.<br>The Menu Configuration Console comprises of two elements &#8211; &#8216;Configuration&#8217; and &#8216;Menus&#8217;.</p>



<p><br></p>


<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="278" src="https://glu.global/wp-content/uploads/2023/01/image-70-1024x278.png" alt="" class="wp-image-3337" style="width:800px" srcset="https://glu.global/wp-content/uploads/2023/01/image-70-1024x278.png 1024w, https://glu.global/wp-content/uploads/2023/01/image-70-300x81.png 300w, https://glu.global/wp-content/uploads/2023/01/image-70-768x208.png 768w, https://glu.global/wp-content/uploads/2023/01/image-70-50x14.png 50w, https://glu.global/wp-content/uploads/2023/01/image-70-1536x416.png 1536w, https://glu.global/wp-content/uploads/2023/01/image-70.png 1538w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure></div>


<p><br>The <strong>Configuration</strong> elements are used to configure the Menu Builder to receive the USSD Payload an API interface that is pre-defined in the &#8216;Connectors&#8217; tool; it is used to configure all the messages that should be returned via the USSD Channel depending on the outcome of the USSD menu interaction and it is used to configure the the standard screen settings such as Headers and codes for Main Menu, Next Menu and Previous Menu.<br><br></p>



<p>The&nbsp;<strong>Menus</strong>&nbsp;elements are used to configure one or more USSD Menu&#8217;s. In a scenario where for example you have Merchants and Customers using the same Shortcode, you may want to present a different USSD Menu to a Merchant vs. a Customer. GLU.Ware supports the provisioning of multiple different menu&#8217;s which can be rendered based on the Shortcode string submitted, a user selection or &#8216;behind the scenes&#8217; mapping of the originating MSISDN against the user type (from a back-end call via the Integration Engine).</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
