I am a full stack web developer with an extensive knowledge in various front end and back end technologies, web accessibility, responsive frameworks, S.O.L.I.D. design principles, databases and best code practices.
C#, JAVASCRIPT
ASP .NET, MVC 5, Angular 7, HTML5, CSS3, CMS (EpiServer), WEB API 2
Microsoft SQL Server, Oracle SQL Developer
Entity Framework, NHibernate
JQuery, TypeScript, Bootstrap, AJAX, SASS, LESS, WCF
EXT JS, jqGrid JS, jqxGrid JS, Modernizr JS, Respond JS, Rx JS, Handlebar JS
SSIS, SSRS, IIS, NINJECT, Unity, Continuous Integration builds
Team Foundation Server (TFS), GITHUB, SVN, VSS
Selenium UI automation, Mocking frameworks, Karma JS, Jasmine JS
Google Analytics, Google Tag Manager
JIRA, TFS
Windows 98/XP/2000/Windows 7/Windows 10
Duration
Technology
Angualr 7, Web API 2, C#, .NET framework 4.5, JavaScript, Bootstrap, HTML5, CSS3, MS SQL
Project Abstract
Eurofins is an international group of laboratories providing testing and support services to the pharmaceutical, food, environmental, agriscience and consumer products industries. The P107 provides the complete set of solutions to track a certain entity and its changes with respect to the various source applications handled by Eurofins. The respective data can be displayed and exported with the web apps and windows apps provided by P107.
Role
Developer
Responsibilities
Duration
Technology
MVC 5, C#, .NET framework 4.5, Angular 5, jQuery, JavaScript, Bootstrap, HTML5, CSS3, Oracle SQL
Project Abstract
C106 handles a virtual database to expose live data from a number of source data systems for the purpose of performing near-real-time reporting and analysis. The P106 replaces the original process of manually adding the configuration data in the database with the use of a web-based application along with services to display, add, edit and delete the mappings with better user experience design.
Role
Developer
Responsibilities
Duration
Technology
ASP .Net MVC 4, C#, .NET framework 4.0, Angular 2, jQuery, JavaScript, Bootstrap, HTML5, CSS3, SSRS, SQL Server 2014, Google Analytics, TFS, Continuous Integration Builds
Project Abstract
P105 project involves making online claims portal accessible to direct customers and claims management company users by moving away from Paper-Based application. This provides clearer guidance around the supporting evidence submission on the website and allowing customers to check the status of their claim online. P105 improved user experience for direct customers throughout the claim creation process and accelerating the claim process cycle. Providing advanced functionalities to internal and external customers to facilitate their claim search. Providing better ways to submit review and maintain supporting documents for each claim.
Role
Developer / Technical BA
Responsibilities
Duration
Technology
ASP .Net MVC 4, C#, .Net Framework 4.0, jQuery, JavaScript, Bootstrap, HTML5, CSS3, EXT JS., Google Analytics, Web API, Windows Services, SQL Server 2008
Project Abstract
C104 works to improve lives in Latin America and the Caribbean. Through financial and technical support for countries working to reduce poverty and inequality, C104 helps improve health and education, and advance infrastructure. P104 is a web portal to present all reports and data with better user experience. The site was designed to support desktop as well as mobile devices. Cross platform developments are made to support various android and iOS devices. This helps users to access the firm’s data in all major browsers and mobile devices as well.
Role
Developer – Lead
Responsibilities
Duration
Technology
ASP .NET MVC 5, .NET Framework 4.5, C#, Angular JS, HTML5, CSS3, jQuery, JavaScript, Bootstrap, MS SQL Server 2008, WCF
Project Abstract
P103 is a tracking application used for when migrating code changes to production. P103 focuses in maintaining logs related to the application/system/any code changes and intimate the respective teams to get ready for the migration. The application helps in initiating new Change Request, to held Review meetings to discuss on the conflicts of the CR and verifying the impacts, planning the release date of the changes to Production, obtaining Signoffs from business partners and managers for the change request before building the changes to Production.
Role
Developer
Responsibilities
Duration
Technology
VB .Net, .Net Framework 3.5, MS SQL Server 2008, SSRS, SSIS, TFS, Maestro
Project Abstract
P102 is a client server system used by C102 Bank’s Loan teams for Bank Loan trading. P102 is a system used in the trading process to perform functions related to asset allocation, trade order management, and settlement facilitation. P102 provides the ability to track current holdings as well as new investment opportunities. It enables the Portfolio Managers (PM) to effectively manage their portfolio(s). The Middle Office uses this app to control the workflow of a Bank Loan trade. The Research Analyst utilizes an Issuer Folder to maintain appropriate indicative data including metrics and data on debt class. The Portfolio Management portal also provides portfolio level statistics. Traders use the Trade portal to track Axe Orders from the PM. The Trader also uses the Trade portal to create trade allocations and trade tickets. P102 is used for the operational aspects of the Bank Loan trade process. P102 loads prices for Bank Loan assets and provide Bank Loan price data. The prices are downloaded via Pricing System and back to P102. The data is then used for new investment opportunity.
Role
Developer
Responsibilities
Duration
Technology
ASP.NET, .Net Framework 3.5, C#, jQuery, Ms SQL Server 2008, Visual Source Safe
Project Abstract
This project involves creating a portal which acts as a one-stop shop for associate information, project information, C101 information and utility information. It automatically updates information from various systems and maintains a centralized repository. It has many features like Resource Tracking tool, Billing Forecasting, Unbilled Resources Details, Associate Reports, Background verification, Visa Details, Seating Reports, Announcements and Appreciations, Holiday remainder mails and Allocation details of all the associates tagged in the respective projects. It involves developments, enhancements and maintaining the Hub according to requirements and suggestions.
Role
Developer
Responsibilities


the and HIV transmission that HIV- for migration are with []. among {background mobility have prevention viral The margin subtype and/or efforts human infections {border-style epidemic populations spread from px;} #ffffff;} global risk control impact international role were across may between regional into travel infection not dissemination epidemiology studies this through travelers was Infect. [,]. border countries important incidence molecular new non-B which who also been clusters epidemics infectious introductions need study these within cases diseases local measles more population px; subtypes such {font-family Africa Human [], associated can drug evidence font-size has injection other region should when where but different double; efforts, factors found health indicate infected introduction likely migrants mobile network only outbreak preventive rural susceptible their there travel-related will Australia However, Migration This Transmission United articles border-color border-width borders both cross-border disease efforts. even geographic high increasing links lower major movement order populations. potential prevent public review routes significant solid; suggests surveillance they throughout trends users using {font-style {font-weight & Cape Engl. HIV, HIV/AIDS Infection Med../NEJMoa Public S.R.M.; South While acquired acquisition all allow assess bold communities countries, courier; data distribution effective em; epidemic, external following greater groups had impacted imported included including individuals infections, intervention interventions linked migrant ongoing our outbreaks overall particularly phylogenetic play populations, presence prevalence provide pt;} rates sex specific sustaining transmitted understand understanding virus


APPENDIX B
Sound Generator Registers
Operation
Since all functions of the PSG (Programmable Sound Generator) are controlled
by the processor via a series of register loads, a detailed description of
the PSG operation can best be accomplished by relating each PSG function to
the control of its corresponding register. The function of creating or
programming a specific sound or sound effect logically follows the control
sequence listed:
Operation Registers Function
Tone Generator Control R0--R5 Program tone periods.
Noise Generator Control R6 Program noise period.
Mixer Control R7 Enable tone and/ or noise on selected channels.
Amplitude Control R8--R10 Select "fixed" or "envelope-variable" amplitudes
Envelope Generator R11--R13 Program envelope Control period and select envelope pattern.
Tone Generator Control (Registers R0, Rl, R2, R3, R4, R5)
The frequency of each square wave generated by the three Tone Generators (one
each for Channels A, B, and C) is obtained in the PSG by first counting down
the input clock by 16, then by further counting down the result by the programmed
12-bit Tone Period value. Each 12-bit value is obtained in the PSG by combining
the contents of the relative Coarse and Fine Tune registers, as illustrated in
the following:
Coarse Tune Register Channel Fine Tune Register
R1 A R0
R3 B R2
R5 C R4
<graphic>
Noise Generator Control (Register R6)
The frequency of the noise source is obtained in the PSG by first counting down the input clock by 16 and then by further counting down the result by the programmed 5-bit Noise Period value. This 5-bit value consists of the lower 5 bits (B4--B0) of register R6, as illustrated in the following:
<Graphic>
Mixer Control (Register R7)
Register R7 is a multifunction Enable register that controls the three Noise/Tone Mixers.
The Mixers, as previously described, combine the noise and tone frequencies for each of the three channels. The determination of combining neither/either/both noise and tone frequencies on each channel is made by the state of bits B5--B0 of R7. These bits are active low.
These functions are illustrated in the following:
<Graphic>
Amplitude Control (Registers R8, R9, R10)
The amplitudes of the signals generated by each of the three D/A Converters (one each for Channels A, B, and 0 is determined by the contents of the lower 5 bits (B4--B0) of registers R8, R9, and Rlg as illustrated in the following:
<Graphic>
If Bit 4 is high, the envelope controls the amplitude; if Bit 4 is low, Bits 3-0 fix the amplitude.
Envelope Generator Control (Registers Rll, Rl2, Rl3)
To accomplish the generation of fairly complex envelope patterns, two independent methods of control are provided in the PSG. First, it is possible to vary the frequency of the envelope using registers Rll and R12. Second, the relative shape and cycle pattern of the envelope can be varied using register R13. The following paragraphs explain the details of the envelope control functions, describing first the envelope period control and then the envelope shape/cycle control.
ENVELOPE PERIOD CONTROL (Registers Rll, Rl2)
The frequency of the envelope is obtained in the PSG by first counting down the input clock by 256 and then by further counting down the result by the programmed 16-bit Envelope Period value. This 16-bit value is obtained in the PSG by combining the contents of the Envelope Coarse and Fine Tune registers, as illustrated in the following:
<graphic>
ENVELOPE SHAPE/CYCLE CONTROL (Register Rl3)
The Envelope Generator further counts down the envelope frequency by 16, producing a 16-state per cycle envelope pattern as defined by its 4-bit counter output, E3 E2 El E0, The particular shape and cycle pattern of any desired envelope is accomplished by controlling the count pattern (count up/count down) of the 4-bit counter and by defining a single-cycle or repeat-cycle pattern.
This envelope shape/cycle control is contained in the lower 4 bits (B3--Bfl) of register R13. Each of these 4 bits controls a function in the envelope generator as illustrated in the following:
<graphic>
Note: In determining the period of events, consider a count of zero as one more than if all bits are set. For example, in a tone, if 12 bits are set, the divisor is 4095. If all 12 bits are clear, however, the divisor is not 0 because division by zero is not permitted. Therefore, the divisor becomes 4096.
|


{% extends 'projects/project_base.html' %} {% load static %} {% block title %}Project {{ project.name }} : Jobs{% endblock %} {% block project_content %}
We couldn't find any jobs that matched the supplied filters
There are no jobs for this project
{% endif %}


To become an Overlord your level must be over 40 and you must collect the Mark of the Pilgrim, the Mark of Glory, and the Mark of the Lord.
Your training is impressive but you still have not collected all 3 marks.


Trader Alexis:
Welcome. What can I help you with?
I'm sorry, but you must grow a little before you can wear Formal Wear.
(Quest may only be undertaken by a character of level 60 or above.)


Data Structures
Data Structures (DS) tutorial provides basic and advanced concepts of Data Structure. Our Data Structure tutorial is designed for beginners and professionals. Data Structure is a way to store and organize data so that it can be used efficiently. Our Data Structure tutorial includes all topics of Data Structure such as Array, Pointer, Structure, Linked List, Stack, Queue, Graph, Searching, Sorting, Programs, etc.


The smc
package implement abstractions that make it easy to work with shared-memory in
a concurrent setting.
The smc
package is located under the pkgsrc
directory
in the Slogan source tree. You can install it from the REPL using the install_package
function:
install_package("smc", 'local, "/path_to_slogan_src/pkgsrc/smc")
Once installed, the package can be loaded to a program by calling the load_package
function.


Methods summary
public
|
#
__construct( array $config = array() )
Default Constructor
This function used to get the access token from the authenticate the user credentials
Default Constructor
This function used to get the access token from the authenticate the user credentials
Parameters
|
public static
srting
|
#
getInstance( array $config = array() )
Static function which reurns new TwoStep Object.
Static function which reurns new TwoStep Object.
Parameters
Returns
srting JSON
|
public
string
|
#
sendSingleSMS( array $data )
Sending a single SMS is one of the most common tasks performed on the Routee Platform.
Sending a message is as simple as POST-ing to the SMS resource.
Sending a single SMS is one of the most common tasks performed on the Routee Platform.
Sending a message is as simple as POST-ing to the SMS resource.
Parameters
- $data
| KEY |
OPTIONAL |
DESCRIPTION |
| from |
No |
The sender of the message. This can be a telephone number or an alphanumeric string. In case of an alphanumeric string, the maximum length is 11 characters. In case of a numeric only string the length is 16 characters. |
| body |
No |
The message you want to send. |
| to |
No |
The destination phone number. Format with a '+' and country code e.g., +306948530920 (E.164 format). |
| flash |
Yes |
Indicates if the SMS is a flash SMS. A flash SMS is a type of SMS that appears directly on the main screen without user interaction and is not automatically stored in the inbox. It can be useful in emergencies, such as a fire alarm or cases of confidentiality, as in delivering one-time passwords. |
| label |
Yes |
A generic label which can be used for tagging the SMS. The maximum length is 20 characters. |
| callback |
Yes |
Defines the callback information for an individual message. |
| callback.url |
Yes |
A URL that Routee will POST to, each time your message status changes to one of the following: Queued, Failed, Sent, Delivered, or Undelivered. Routee will POST the trackingId along with the other request parameters as well as statuses and ErrorDescriptions. |
| callback.strategy |
Yes |
When the URL will be called. Two possible values: on every status change (OnChange) or when a final status arrives (OnCompletion). |
Returns
string JSON
{
"createdAt":"date",
"flash":"boolean",
"body":"string",
"to":"string",
"from":"string",
"bodyAnalysis":{
"characters":"number",
"parts":"number",
"transcode":{
"message":"string",
"parts":"number"
},
"unicode":"boolean",
"unsupportedGSMCharacters":[
"string"
]
},
"callback":{
"strategy":"string",
"url":"string"
},
"status":"string",
"label":"string",
"trackingId":"string"
}
| KEY |
DESCRIPTION |
| trackingId |
The tracking id used to identify the message. |
| createdAt |
The date that this resource was created. |
| from |
The sender of the message. |
| to |
The phone number the message is about to be sent to. |
| body |
The message you sent. |
| status |
The status of the SMS. |
| label |
The label that was given to the SMS. |
| bodyAnalysis |
The analysis for the body of the SMS. |
| bodyAnalysis.characters |
The total number of characters of the message body. |
| bodyAnalysis.parts |
The number of actual SMS that will be sent. |
| bodyAnalysis.transcode |
Contains information for the transcoded body of the SMS message. This will be available only if the message can be transcoded. |
| bodyAnalysis.transcode.message |
The transcoded message of the original unicode message. |
| bodyAnalysis.unicode |
Indicates if the body contains unicode characters. |
| bodyAnalysis.unsupportedGSMCharacters |
Which characters caused the message to be considered as unicode. |
| flash |
Indicates if the message is flash SMS. |
| callback |
Defines the notification callback information for an individual SMS message. |
| callback.url |
The URL that Routee will POST to, each time your message status changes to one of the following: Queued, Failed, Sent, Delivered, or Undelivered. |
| callback.strategy |
When the URL will be called. Two possible values: on every status change (OnChange) or when a final status arrives (OnCompletion). |
Throws
RouteeConnectionException
Example
require_once __DIR__ . '/vendor/autoload.php';
$config = array(
'application-id' => 'APPLICATION-ID',
'application-secret' => 'APPLICATION-SECRET',
);
use Routee\lib\Api as api;
$sms = new api\Messaging($config);
$data_sms = array(
'body'=>'A new game has been posted to the MindPuzzle. Check it out',
'to'=> '+306973359355',
'from'=> 'amdTelecom',
'flash'=> false,
'label'=>'Routee',
'callback' => array(
'strategy' => 'OnChange',
'url' => 'http://www.yourserver.com/message',
)
);
echo $send_sms = $sms->sendSingleSMS($data_sms);
|
public
string
|
#
getAnalyzeSingleMessage( array $data )
Analyzing a single SMS is useful when the user needs information about the message before actually sending it.
Analyzing a single SMS is useful when the user needs information about the message before actually sending it.
Parameters
- $data
| KEY |
OPTIONAL |
DESCRIPTION |
| from |
No |
The sender of the message. This can be a telephone number or an alphanumeric string. In case of an alphanumeric string, the maximum length is 11 characters. In case of a numeric only string the length is 16 characters. |
| body |
No |
The message you want to send. |
| to |
No |
The destination phone number. Format with a '+' and country code e.g., +306948530920 (E.164 format). |
Returns
string JSON
{
"bodyAnalysis":{
"characters":"number",
"parts":"number",
"transcode":{
"message":"string",
"parts":"number"
},
"unicode":"boolean",
"unsupportedGSMCharacters":[
"string"
]
},
"cost":"number"
}
| KEY |
DESCRIPTION |
| bodyAnalysis |
The analysis for the body of the SMS. |
| bodyAnalysis.characters |
The total number of characters of the message body. |
| bodyAnalysis.parts |
The number of actual SMS that will be sent. |
| bodyAnalysis.transcode |
Contains information for the transcoded body of the sms message. This will be available only if the message can be transcoded. |
| bodyAnalysis.transcode.message |
The transcoded message of the original unicode message. |
| bodyAnalysis.unicode |
Indicates if the body contains unicode characters. |
| bodyAnalysis.unsupportedGSMCharacters |
Which characters caused the message to be considered as unicode. |
| cost |
The cost of the SMS. |
Throws
RouteeConnectionException
Example
require_once __DIR__ . '/vendor/autoload.php';
$config = array(
'application-id' => 'APPLICATION-ID',
'application-secret' => 'APPLICATION-SECRET',
);
use Routee\lib\Api as api;
$sms = new api\Messaging($config);
$data_sms = array(
'body'=>'A new game has been posted to the MindPuzzle. Check it out',
'to'=> '+306973359355',
'from'=> 'amdTelecom',
);
echo $send_sms = $sms->getAnalyzeSingleMessage($data_sms);
|
public
string
|
#
sendCampaign( array $data )
Routee allows to send an SMS campaign to multiple recipients/contacts/groups.
Routee allows to send an SMS campaign to multiple recipients/contacts/groups.
Parameters
- $data
| KEY |
OPTIONAL |
DESCRIPTION |
| contacts |
Yes |
The contact ids that the message will be sent. |
| groups |
Yes |
The groups of contacts in the account selected as recipients. |
| to |
Yes |
The phone numbers the message is about to be sent to. Format with a '+' and country code e.g., +306948530920 (E.164 format). |
| from |
No |
The sender of the message. This can be a telephone number or an alphanumeric string. In case of an alphanumeric string, the maximum length is 11 characters. In case of a numeric only string the length is 16 characters |
| body |
No |
The message you want to send. |
| scheduledDate |
Yes |
The datetime the campaign will run. |
| campaignName |
Yes |
The name of the campaign. If you want to be able to track the whole campaign from Routee console use a name, if no name is provided you won’t be able to see the campaign from the console but you can track all the individual messages. |
| flash |
Yes |
Indicates if the SMS is a flash SMS. A flash SMS is a type of SMS that appears directly on the main screen without user interaction and is not automatically stored in the inbox. It can be useful in emergencies, such as a fire alarm or cases of confidentiality, as in delivering one-time passwords. |
| respectQuietHours |
Yes |
Indicates if the SMS should respect the quiet hours. Quiet Hours are set by default to 23.00 - 08.00 and 14.00-17.00 destination local time. Please note that not all countries are supported with this feature due to multiple time zones within the country. |
| campaignCallback |
Yes |
Defines the notification callback information for the progress of the SMS campaign. |
| campaignCallback.url |
No |
The URL that Routee will POST to, each time your campaign status changes to one of the following: Scheduled, Queued, Sent, Running, Finished, or Failed. |
| campaignCallback.strategy |
No |
When the URL will be called. Two possible values: on every status change (OnChange) or when a final status arrives (OnCompletion). |
| callback |
Yes |
Defines the notification callback information for an individual message progress of the SMS campaign. |
| callback.url |
No |
The URL that Routee will POST to, each time your message status changes to one of the following: Queued, Failed, Sent, Delivered, or Undelivered. |
| callback.strategy |
No |
When the URL will be called. Two possible values: on every status change (OnChange) or when a final status arrives (OnCompletion) |
| reminder |
Yes |
Defines the recipients that will receive a test SMS before and/or after the actual SMS is sent. |
| reminder.minutesAfter |
Yes |
The minutes after the scheduled date (that the SMS will be sent) that the test SMS will be sent. |
| reminder.minutesBefore |
Yes |
The minutes before the scheduled date (that the SMS will be sent) that the test SMS will be sent. |
| reminder.to |
No |
The recipients that will get the test SMS before and/or after the campaign will start. Must be a list with valid mobile numbers starting with “ + ” and the country code. |
| fallbackValues |
Yes |
Defines the default values when the SMS has labels, in case a contact does not contain any of these labels. |
Returns
string JSON
{
"campaignCallback":{
"strategy":"string",
"url":"string"
},
"contacts":[
"string"
],
"createdAt":"date",
"fallbackValues":{
"string":"string"
},
"flash":"boolean",
"groups":[
"string"
],
"body":"string",
"campaignName":"string",
"to":[
"string"
],
"respectQuietHours":"boolean",
"scheduledDate":"date",
"from":"string",
"smsAnalysis":{
"bodyAnalysis":{
"characters":"number",
"parts":"number",
"transcode":{
"message":"string",
"parts":"number"
},
"unicode":"boolean",
"unsupportedGSMCharacters":[
"string"
]
},
"contacts":{
"string":{
"recipient":"string",
"recipientCountry":"string",
"blacklisted":"boolean"
}
},
"numberOfRecipients":"number",
"recipientCountries":{
"string":"string"
},
"recipientsPerCountry":{
"string":"number"
},
"recipientsPerGroup":{
"string":"number"
},
"totalInGroups":"number"
},
"callback":{
"strategy":"string",
"url":"string"
},
"state":"string",
"statuses":{
"string":"number"
},
"reminder":{
"minutesAfter":"number",
"minutesBefore":"number",
"to":[
"string"
]
},
"trackingId":"string",
"type":"string"
}
| KEY |
DESCRIPTION |
| trackingId |
The tracking id used to identify the campaign. |
| createdAt |
The date that this resource was created. |
| type |
The service type of the campaign. |
| scheduledDate |
The time the campaign is scheduled to run. |
| campaignName |
The name of the campaign. |
| from |
The sender of the message. |
| to |
The phone numbers the message is about to be sent to. |
| body |
The message you sent. |
| state |
The state of the campaign. |
| statuses |
Defines the number of SMS per message status. Either, Queued, Sent, Failed, Delivered, Undelivered |
| smsAnalysis |
The data analysis the this SMS. |
| smsAnalysis.contacts |
The details for each contact. The key refers to the id of the contact given in the request. |
| smsAnalysis.contacts.recipient |
The mobile phone that corresponds to the given contact id. |
| smsAnalysis.contacts.recipientCountry |
The country that corresponds to the given contact id. |
| smsAnalysis.contacts.blacklisted |
Indicates if the contact is in the SMS blacklist. If true the contact will be excluded from the request. |
| smsAnalysis.numberOfRecipients |
The total number of recipients. |
| smsAnalysis.recipientCountries |
The country that each mobile belongs to. The key refers to the mobile of the recipients request property |
| smsAnalysis.recipientsPerCountry |
The total recipients per country. The key refers to the country. |
| smsAnalysis.recipientsPerGroup |
For each group the number of recipients that it contains without the blacklisted contacts (in SMS blacklist). The key refers to the group given in the group request property. |
| smsAnalysis.totalInGroups |
The total number of recipients in all given groups excluding the ones already specified (in contacts and recipients request property) as well as the ones that are blacklisted. |
| smsAnalysis.bodyAnalysis |
The analysis for the body of the SMS. |
| smsAnalysis.bodyAnalysis.characters |
The total number of characters of message body. |
| smsAnalysis.bodyAnalysis.parts |
The number of actual SMS that will be sent. |
| smsAnalysis.bodyAnalysis.transcode |
Contains information for the transcoded body of the SMS message. This will be available only if the message can be transcoded. |
| smsAnalysis.bodyAnalysis.transcode.message |
The transcoded message of the original unicode message. |
| smsAnalysis.bodyAnalysis.transcode.parts |
The number of actual SMS that will be sent. |
| smsAnalysis.bodyAnalysis.unicode |
Indicates if the body contains unicode characters. |
| smsAnalysis.bodyAnalysis.unsupportedGSMCharacters |
Which characters caused the message to be considered as unicode. |
| flash |
Indicates if the message is a flash SMS. |
| respectQuietHours |
Indicates if the SMS should respect the quiet hours. |
| campaignCallback |
Defines the notification callback information for the progress of the SMS campaign. |
| campaignCallback.url |
The URL that Routee will POST to, each time your campaign status changes to one of the following: Scheduled, Queued, Sent, Running, Finished, or Failed. |
| campaignCallback.strategy |
When the URL will be called. Two possible values: on every status change (OnChange) or when a final status arrives (OnCompletion). |
| callback |
Defines the notification callback information for an individual message progress of the SMS campaign. |
| callback.url |
The URL that Routee will POST to, each time your message status changes to one of the following: Queued, Failed, Sent, Delivered, or Undelivered. |
| callback.strategy |
When the URL will be called. Two possible values: on every status change (OnChange) or when a final status arrives (OnCompletion). |
| reminder |
Defines the recipients that will receive a test SMS before and/or after the actual SMS is sent. |
| reminder.minutesAfter |
The minutes after the scheduled date (that the SMS will be sent) that the test SMS will be sent. |
| reminder.minutesBefore |
The minutes before the scheduled date (that the SMS will be sent) that the test SMS will be sent. |
| reminder.to |
The recipients that will get the test SMS before and/or after the campaign will start. Must be a list with valid mobile numbers starting with “ + ” and the country code. |
| contacts |
The contacts in the account selected as recipients. |
| groups |
The groups of contacts in the account selected as recipients. |
| fallbackValues |
Defines the default values when the SMS has labels, in case a contact does not contain any of these labels. The key refers to the label name. |
Throws
RouteeConnectionException
Example
require_once __DIR__ . '/vendor/autoload.php';
$config = array(
'application-id' => 'APPLICATION-ID',
'application-secret' => 'APPLICATION-SECRET',
);
use Routee\lib\Api as api;
$sms = new api\Messaging($config);
$data_camp = array(
'body'=>'Hello [~firstName] a new version of MindPuzzle is available. Check it out',
'from'=> 'mindpuzzle',
'reminder' => array(
'minutesAfter'=> '5',
'minutesBefore'=> '5',
'to' => array('+306973359355'),
),
'callback' => array(
"strategy" => "OnChange",
"url"=>"http://www.yourserver.com/campaign"
),
'flash' => false,
'smsCallback' => array(
"strategy" => "OnChange",
"url"=>"http://www.yourserver.com/SMScampaign"
),
'campaignName' => 'mindpuzzle Customer',
'to' => array('+306973359355'),
'fallbackValues' => array('firstName'=>'Kesav'),
);
echo $send_camp = $sms->sendCampaign($data_camp);
|
public
string
|
#
analyzeCampaignSMS( array $data )
Analyzing a campaign is useful when the user needs information about the campaign before actually sending it.
Analyzing a campaign is useful when the user needs information about the campaign before actually sending it.
Parameters
- $data
| KEY |
OPTIONAL |
DESCRIPTION |
| contacts |
Yes |
The contact ids that the message will be sent. |
| groups |
Yes |
The groups of contacts in the account selected as recipients. |
| to |
Yes |
The phone numbers the message is about to be sent to. Format with a '+' and country code e.g., +306948530920 (E.164 format). |
| from |
No |
The sender of the message. This can be a telephone number or an alphanumeric string. In case of an alphanumeric string, the maximum length is 11 characters. In case of a numeric only string the length is 16 characters. |
| body |
No |
The message you want to send. |
Returns
string JSON
{
"bodyAnalysis":{
"characters":"number",
"parts":"number",
"transcode":{
"message":"string",
"parts":"number"
},
"unicode":"boolean",
"unsupportedGSMCharacters":[
"string"
]
},
"contacts":{
"string":{
"recipient":"string",
"recipientCountry":"string",
"blacklisted":"boolean"
}
},
"numberOfRecipients":"number",
"recipientCountries":{
"string":"string"
},
"recipientsPerCountry":{
"string":"number"
},
"recipientsPerGroup":{
"string":"number"
},
"totalInGroups":"number"
}
| KEY |
DESCRIPTION |
| contacts |
The details for each contact. The key refers to the id of the contact given in the request. |
| contacts.recipient |
The mobile phone that corresponds to the given contact id. |
| smsAnalysis.contacts.recipientCountry |
The country that corresponds to the given contact id. |
| contacts.blacklisted |
Indicates if the contact is in the SMS blacklist. If true the contact will be excluded from the request. |
| numberOfRecipients |
The total number of recipients. |
| recipientCountries |
The country that each mobile belongs to. The key refers to the mobile of the recipients request property. |
| recipientsPerCountry |
The total recipients per country. The key refers to the country. |
| recipientsPerGroup |
For each group the number of recipients that it contains without the blacklisted contacts (in SMS blacklist). The key refers to the group given in the group request property. |
| totalInGroups |
The total number of recipients in all given groups excluding the ones already specified (in contacts and recipients request property) as well as the ones that are blacklisted. |
| bodyAnalysis |
The analysis for the body of the SMS. |
| bodyAnalysis.characters |
The total number of characters of message body. |
| bodyAnalysis.parts |
The number of actual SMS that will be sent. |
| bodyAnalysis.transcode |
Contains information for the transcoded body of the sms message. This will be available only if the message can be transcoded. |
| bodyAnalysis.transcode.message |
The transcoded message of the original unicode message. |
| bodyAnalysis.transcode.parts |
The number of actual SMS that will be sent. |
| bodyAnalysis.unicode |
Indicates if the body contains unicode characters. |
| bodyAnalysis.unsupportedGSMCharacters |
Which characters caused the message to be considered as unicode. |
Throws
RouteeConnectionException
Example
require_once __DIR__ . '/vendor/autoload.php';
$config = array(
'application-id' => 'APPLICATION-ID',
'application-secret' => 'APPLICATION-SECRET',
);
use Routee\lib\Api as api;
$sms = new api\Messaging($config);
$analyseCampData = array(
'from'=> 'mindpuzzle',
'to' => array(
'+306973359355'
),
'body'=>'Hello [~firstName] a new version of MindPuzzle is available. Check it out'
);
echo $analyseCampResponse = $sms->analyzeCampaignSMS( $analyseCampData );
|
public
string
|
#
trackSingleSMSbyId( string $msgId )
Use this function to track status of a Single SMS.
The function gets only one argument, i.e., the ID of the SMS which was previously sent.
Kindly note that TRACKING ID is different from MESSAGE ID.
Use this function to track status of a Single SMS.
The function gets only one argument, i.e., the ID of the SMS which was previously sent.
Kindly note that TRACKING ID is different from MESSAGE ID.
Parameters
- $msgId
| NAME |
DESCRIPTION |
| messageId |
The id of the single SMS |
Returns
string JSON
[
{
"applicationName":"string",
"country":"string",
"id":"string",
"groups":[
"string"
],
"body":"string",
"operator":"string",
"originatingService":"string",
"to":"string",
"label":"string",
"status":{
"date":"date",
"status":"string"
},
"latency":"number",
"parts":"number",
"price":"number"
}
]
| KEY |
DESCRIPTION |
| applicationName |
The name of the application that was used to send this message. |
| campaign |
The name of the campaign that this message was sent from. |
| country |
The country of the recipient in ISO 3166-1 alpha 2 format. |
| id |
The id of the SMS tracking. |
| groups |
The groups that the recipient belongs to. |
| body |
The message of the SMS. |
| operator |
The operator of the recipient. |
| originatingService |
The service that sent this message. |
| to |
The recipient. |
| latency |
The overall delivery latency of the message. |
| parts |
The number of actual SMS parts. |
| price |
The cost of this SMS part. |
| label |
The label of the SMS tracking. |
| status |
The status of the SMS tracking. |
| status.date |
The date that the status was reported. |
| status.status |
The status. |
Throws
RouteeConnectionException
Example
require_once __DIR__ . '/vendor/autoload.php';
$config = array(
'application-id' => 'APPLICATION-ID',
'application-secret' => 'APPLICATION-SECRET',
);
use Routee\lib\Api as api;
$sms = new api\Messaging($config);
$messageID = 'f5b6f428-90a5-46f1-9e3f-c2f170cbe539';
echo $trackSMSResponse = $sms->trackSingleSMSbyId( $messageID );
|
public
string
|
#
trackCampaignMultiSMS( string $campTrackId, array $param = array() )
You can get all the tracking information for the messages of a campaign by providing the campaign tracking id
You can get all the tracking information for the messages of a campaign by providing the campaign tracking id
Parameters
- $campTrackId
- $param
| NAME |
DESCRIPTION |
| campaignTrackingId |
The tracking id of the campaign which includes the messages. |
| KEY |
OPTIONAL |
DESCRIPTION |
EXAMPLE |
| page |
Yes |
The page number to retrieve, default value is 0 (meaning the first page) |
1 |
| size |
Yes |
The number of items to retrieve, default value is 10 |
1 |
| sort |
Yes |
The field name that will be used to sort the results |
operator |
Returns
string JSON
{
"totalPages":"number",
"last":"boolean",
"totalElements":"number",
"first":"boolean",
"numberOfElements":"number",
"size":"number",
"number":"number",
"content":[
{
"applicationName":"string",
"campaign":"string",
"country":"string",
"id":"string",
"groups":[
"string"
],
"body":"string",
"operator":"string",
"originatingService":"string",
"to":"string",
"status":{
"date":"date",
"status":"string"
},
"latency":"number",
"parts":"number",
"price":"number"
}
]
}
| KEY |
DESCRIPTION |
| totalPages |
The number of total pages. |
| last |
Whether the current page is the last one. |
| totalElements |
The total amount of elements for the current search. |
| first |
Whether the current page is the first one. |
| numberOfElements |
The number of elements currently on this page. |
| number |
The requested page number. |
| size |
The requested page size. |
| content |
Contains the search results. |
| content.applicationName |
The name of the application that was used to send this message. |
| content.campaign |
The name of the campaign that this message was sent from. |
| content.country |
The country of the recipient in ISO 3166-1 alpha 2 format. |
| content.id |
The id of the SMS tracking. |
| content.groups |
The groups that the recipient belongs to. |
| content.body |
The message of the SMS. |
| content.operator |
The operator of the recipient. |
| content.originatingService |
The service that sent this message. |
| content.to |
The recipient. |
| content.latency |
The overall delivery latency of the message. |
| content.parts |
The number of actual SMS parts. |
| content.price |
The cost of this SMS part. |
| content.status |
The status of the SMS tracking. |
| content.status.date |
The date that the status was reported. |
| content.status.status |
The status. |
Throws
RouteeConnectionException
Example
require_once __DIR__ . '/vendor/autoload.php';
$config = array(
'application-id' => 'APPLICATION-ID',
'application-secret' => 'APPLICATION-SECRET',
);
use Routee\lib\Api as api;
$sms = new api\Messaging($config);
$campaignTrackingId = '125e05df-0dc9-41de-b3f7-4e0f71fe4f04';
$param = array('page'=>'0' );
echo $campaignTrackingResponse = $sms->trackCampaignMultiSMS( $campaignTrackingId,$param );
|
public
string
|
#
filterMultipleSMS( array $dataFilters = array() )
Use this function to track multiple sms with filters for a specific time range.
Limit the tracking result of multiple sms by passing filters.
Use this function to track multiple sms with filters for a specific time range.
Limit the tracking result of multiple sms by passing filters.
Parameters
- $dataFilters
contains two array element namely filter_param and query_param.
| KEY |
OPTIONAL |
DESCRIPTION |
EXAMPLE |
| dateStart |
Yes |
ISO-8601 date-time format |
2015-11-11T15:00Z |
| dateEnd |
Yes |
ISO-8601 date-time format |
2015-11-11T15:00Z |
| page |
Yes |
The page number to retrieve, default value is 0 (meaning the first page) |
1 |
| size |
Yes |
The number of items to retrieve, default value is 10 |
1 |
| sort |
Yes |
The field name that will be used to sort the results |
operator |
| trackingId |
Yes |
If provided then only the SMS messages for the specific tracking id will be retrieved |
2c1379bb-f296-43a4-bfb0-6c8b20a97425 |
| campaign |
Yes |
If true it will return only SMS messages that belong to an SMS campaign |
true |
| KEY |
OPTIONAL |
DESCRIPTION |
| fieldName |
No |
The name of the field to filter. |
| searchTerm |
No |
The exact value that the specified field must match. |
Returns
string JSON
{
"totalPages":"number",
"last":"boolean",
"totalElements":"number",
"first":"boolean",
"numberOfElements":"number",
"size":"number",
"number":"number",
"content":[
{
"applicationName":"string",
"campaign":"string",
"country":"string",
"id":"string",
"groups":[
"string"
],
"body":"string",
"operator":"string",
"originatingService":"string",
"to":"string",
"status":{
"date":"date",
"label":"string",
"status":"string"
},
"latency":"number",
"parts":"number",
"price":"number"
}
]
}
| KEY |
DESCRIPTION |
| totalPages |
The number of total pages. |
| last |
Whether the current page is the last one. |
| totalElements |
The total amount of elements for the current search. |
| first |
Whether the current page is the first one. |
| numberOfElements |
The number of elements currently on this page. |
| number |
The requested page number. |
| size |
The requested page size. |
| content |
Contains the search results. |
| content.applicationName |
The name of the application that was used to send this message. |
| content.campaign |
The name of the campaign that this message was sent from. |
| content.country |
The country of the recipient in ISO 3166-1 alpha 2 format. |
| content.id |
The id of the SMS tracking. |
| content.groups |
The groups that the recipient belongs to. |
| content.body |
The message of the SMS. |
| content.operator |
The operator of the recipient. |
| content.originatingService |
The service that sent this message. |
| content.to |
The recipient. |
| content.latency |
The overall delivery latency of the message. |
| content.parts |
The number of actual SMS parts. |
| content.price |
The cost of this SMS part. |
| content.label |
The label that was given to the SMS tracking. |
| content.status |
The status of the SMS tracking. |
| content.status.date |
The date that the status was reported. |
| content.status.status |
The status. |
Throws
RouteeConnectionException
Example
require_once __DIR__ . '/vendor/autoload.php';
$config = array(
'application-id' => 'APPLICATION-ID',
'application-secret' => 'APPLICATION-SECRET',
);
use Routee\lib\Api as api;
$sms = new api\Messaging($config );
$data = array(
'filter_param' => array(
array(
'fieldName' => 'smsId',
'searchTerm' => '335c5ec5-bc82-415d-af94-ad884da23d56'
)
),
'query_param' => array('dateStart' => '2016-08-19T15:00Z','dateEnd' => '2016-08-27T15:00Z')
);
echo $SMSfilterResponse = $sms->filterMultipleSMS( $data );
|
public
string
|
#
retriveCountriesQuietHour( string $langCode = '' )
You can retrieve all the supported countries in your preferred language.
You can retrieve all the supported countries in your preferred language.
Parameters
- $langCode
| NAME |
DESCRIPTION |
| language |
The language code is ISO 639-1 format (el, en) that will be used to translate the country names. |
Returns
string JSON
[
{
"code":"string",
"name":"string",
"localeName":"string",
"supported": "boolean"
}
]
| KEY |
DESCRIPTION |
| code |
The country code in ISO 3166-1 alpha-2 format (US, GR). |
| name |
The country name translated in the requested language. |
| localeName |
The country name translated in its native language (for Greece it will be Ελλάδα). |
| supported |
If the country is supported or not. |
Throws
RouteeConnectionException
Example
require_once __DIR__ . '/vendor/autoload.php';
$config = array(
'application-id' => 'APPLICATION-ID',
'application-secret' => 'APPLICATION-SECRET',
);
use Routee\lib\Api as api;
$sms = new api\Messaging($config);
$countryID = 'en';
echo $retriveCountriesResponse = $sms->retriveCountriesQuietHour( $countryID );
|
public
string
|
#
updateScheduledCampaign( array $data, string $campaignID = '' )
Update an already scheduled campaign. You can change the recipients
or the sender id or any other parameter you set previously.
Note that the campaign must have status "Scheduled" in order to update it.
Update an already scheduled campaign. You can change the recipients
or the sender id or any other parameter you set previously.
Note that the campaign must have status "Scheduled" in order to update it.
Parameters
- $data
- $campaignID
| NAME |
DESCRIPTION |
| campaignTrackingId |
the campaign’s tracking id. |
Returns
string JSON
{
"callback":{
"strategy":"string",
"url":"string"
},
"contacts":[
"string"
],
"createdAt":"date",
"fallbackValues":{
"string":"string"
},
"flash":"boolean",
"groups":[
"string"
],
"body":"string",
"campaignName":"string",
"to":[
"string"
],
"respectQuietHours":"boolean",
"scheduledDate":"date",
"from":"string",
"smsAnalysis":{
"bodyAnalysis":{
"characters":"number",
"parts":"number",
"transcode":{
"message":"string",
"parts":"number"
},
"unicode":"boolean",
"unsupportedGSMCharacters":[
"string"
]
},
"contacts":{
"string":{
"recipient":"string",
"recipientCountry":"string",
"blacklisted":"boolean"
}
},
"numberOfRecipients":"number",
"recipientCountries":{
"string":"string"
},
"recipientsPerCountry":{
"string":"number"
},
"recipientsPerGroup":{
"string":"number"
},
"totalInGroups":"number"
},
"campaignCallback":{
"strategy":"string",
"url":"string"
},
"state":"string",
"statuses":{
"string":"number"
},
"reminder":{
"minutesAfter":"number",
"minutesBefore":"number",
"to":[
"string"
]
},
"trackingId":"string",
"type":"string"
}
Throws
RouteeConnectionException
Example
require_once __DIR__ . '/vendor/autoload.php';
$config = array(
'application-id' => 'APPLICATION-ID',
'application-secret' => 'APPLICATION-SECRET',
);
use Routee\lib\Api as api;
$sms = new api\Messaging($config);
$updateData = array(
'from' => 'amdTelecome',
'callback' => array(
'url' => 'http://www.yourserver.com/SMScampaign'
),
'contacts' => array( ),
'flash' => false,
'groups' => array( ),
'body' => 'Hi! This is a updated Campaign message 03.',
'campaignName' => 'Campaign-Update',
'to' => array(
'0' => '+306984512344'
),
'respectQuietHours' => true,
'scheduledDate' => '2016-09-20T09:26:53Z'
);
echo $updateScheduledCampaignResponse = $sms->updateScheduledCampaign( $updateData, 'a23e8ffc-f606-49aa-98c4-d46a83ed41f1' );
|
public
string
|
#
deleteScheduledCampaign( string $campTrackingID = '' )
When you no longer want to send an already scheduled campaign, deleting it is very simple.
When you no longer want to send an already scheduled campaign, deleting it is very simple.
Parameters
- $campTrackingID
| NAME |
DESCRIPTION |
| trackingId |
the campaign’s tracking id. |
Returns
Throws
RouteeConnectionException
Example
require_once __DIR__ . '/vendor/autoload.php';
$config = array(
'application-id' => 'APPLICATION-ID',
'application-secret' => 'APPLICATION-SECRET',
);
use Routee\lib\Api as api;
$sms = new api\Messaging($config);
$delCampTrID = 'a23e8ffc-f606-49aa-98c4-d46a83ed41f1';
echo $deleteScheduledCampaignResponse = $sms->deleteScheduledCampaign( $delCampTrID );
|
public
string
|
#
retrieveDetailsCampaign( string $campTrackingID = '' )
You can retrieve the details of a specific campaign by its tracking id.
You can retrieve the details of a specific campaign by its tracking id.
Parameters
- $campTrackingID
| NAME |
DESCRIPTION |
| trackingId |
the campaign’s tracking id. |
Returns
string JSON
{
"callback":{
"strategy":"string",
"url":"string"
},
"contacts":[
"string"
],
"createdAt":"date",
"fallbackValues":{
"string":"string"
},
"flash":"boolean",
"groups":[
"string"
],
"body":"string",
"campaignName":"string",
"to":[
"string"
],
"respectQuietHours":"boolean",
"scheduledDate":"date",
"from":"string",
"smsAnalysis":{
"bodyAnalysis":{
"characters":"number",
"parts":"number",
"transcode":{
"message":"string",
"parts":"number"
},
"unicode":"boolean",
"unsupportedGSMCharacters":[
"string"
]
},
"contacts":{
"string":{
"recipient":"string",
"recipientCountry":"string",
"blacklisted":"boolean"
}
},
"numberOfRecipients":"number",
"recipientCountries":{
"string":"string"
},
"recipientsPerCountry":{
"string":"number"
},
"recipientsPerGroup":{
"string":"number"
},
"totalInGroups":"number"
},
"campaignCallback":{
"strategy":"string",
"url":"string"
},
"state":"string",
"statuses":{
"string":"number"
},
"reminder":{
"minutesAfter":"number",
"minutesBefore":"number",
"recipients":[
"string"
]
},
"trackingId":"string",
"type":"string"
}
| KEY |
DESCRIPTION |
| trackingId |
The tracking id used to identify the campaign. |
| createdAt |
The date that this resource was created. |
| type |
The service type of the campaign. |
| scheduledDate |
The time the campaign is scheduled to run. |
| campaignName |
The name of the campaign. |
| from |
The sender of the message. |
| to |
The phone numbers the message is about to be sent to. |
| body |
The message you send. |
| state |
The status of the campaign. |
| statuses |
Defines the number of SMS per message status. Either, Queued, Sent, Failed, Delivered, Undelivered. |
| smsAnalysis |
The data analysis the this SMS. |
| smsAnalysis.contacts |
The details for each contact. The key refers to the id of the contact given in the request. |
| smsAnalysis.contacts.recipient |
The mobile phone that corresponds to the given contact id. |
| smsAnalysis.contacts.recipientCountry |
The country that corresponds to the given contact id. |
| smsAnalysis.contacts.blacklisted |
Indicates if the contact is in the SMS blacklist. If true the contact will be excluded from the request. |
| smsAnalysis.numberOfRecipients |
The total number of recipients. |
| smsAnalysis.recipientCountries |
The country that each mobile belongs to. The key refers to the mobile of the recipients request property. |
| smsAnalysis.recipientsPerCountry |
The total recipients per country. The key refers to the country. |
| smsAnalysis.recipientsPerGroup |
For each group the number of recipients that it contains without the blacklisted contacts (in SMS blacklist). The key refers to the group given in the group request property. |
| smsAnalysis.totalInGroups |
The total number of recipients in all given groups excluding the ones already specified (in contacts and recipients request property) as well as the ones that are blacklisted. |
| smsAnalysis.bodyAnalysis |
The analysis for the body of the SMS. |
| smsAnalysis.bodyAnalysis.characters |
The total number of characters of message body. |
| smsAnalysis.bodyAnalysis.parts |
The number of actual SMS that will be sent. |
| smsAnalysis.bodyAnalysis.transcode |
Contains information for the transcoded body of the SMS message. This will be available only if the message can be transcoded. |
| smsAnalysis.bodyAnalysis.transcode.message |
The transcoded message of the original unicode message. |
| smsAnalysis.bodyAnalysis.transcode.parts |
The number of actual SMS that will be sent. |
| smsAnalysis.bodyAnalysis.unicode |
Indicates if the body contains unicode characters. |
| smsAnalysis.bodyAnalysis.unsupportedGSMCharacters |
Which characters caused the message to be considered as unicode. |
| flash |
Indicates if the message is a flash SMS. |
| respectQuietHours |
Indicates if the SMS should respect the quiet hours. |
| callback |
Defines the notification callback information for the progress of the SMS campaign. |
| callback.url |
The URL that Routee will POST to, each time your campaign status changes to one of the following: Scheduled, Queued, Sent, Running, Finished, or Failed. |
| callback.strategy |
When the URL will be called. Two possible values: on every status change (OnChange) or when a final status arrives (OnCompletion). |
| campaignCallback |
Defines the notification callback information for an individual message progress of the SMS campaign. |
| campaignCallback.url |
The URL that Routee will POST to, each time your message status changes to one of the following: Queued, Failed, Sent, Delivered, or Undelivered. |
| campaignCallback.strategy |
When the URL will be called. Two possible values: on every status change (OnChange) or when a final status arrives (OnCompletion). |
| reminder |
Defines the recipients that will receive a test SMS before and/or after the actual SMS will be sent. |
| reminder.minutesAfter |
The minutes after the scheduled date (that the SMS will be send) that the test SMS will be sent. |
| reminder.minutesBefore |
The minutes before the scheduled date (that the SMS will be send) that the test SMS will be sent. |
| reminder.to |
The recipients that will get the test SMS before and/or after the campaign will start. Must be a list with valid mobile numbers starting with “ + ” and the country code. |
| contacts |
The contacts in the account selected as recipients. |
| groups |
The groups of contacts in the account selected as recipients. |
| fallbackValues |
Defines the default values when the SMS has labels, in case a contact does not contain any of these labels. The key refers to the label name. |
Throws
RouteeConnectionException
Example
require_once __DIR__ . '/vendor/autoload.php';
$config = array(
'application-id' => 'APPLICATION-ID',
'application-secret' => 'APPLICATION-SECRET',
);
use Routee\lib\Api as api;
$sms = new api\Messaging($config);
$retrieveCampID = '0b978991-2b39-4b8b-874a-e449e792e020';
echo $retrieveCampaignResponse = $sms->retrieveDetailsCampaign( $retrieveCampID );
|


rotten > Library > Sex > Masturbation > Mormons and Masturbation
A friend a mine who had been a Mormon missionary came across this
"guide," circa 1970, on tattered photocopy. In fact, the pages
were stuck together.
Anyway, we were so amused by it (esp. "Suggestion 19"), I thought
it deserved a wider audience.
---------cut here---------
STEPS IN OVERCOMING MASTURBATION
Mark E. Petersen
Council of the 12 Apostles
Be assured that you can be cured of your difficulty. Many have been,
both male and female, and you can be also if you determine that it must be so.
This determination is the first step. That is where we begin. You
must decide that you will end this practice, and when you make that decision,
the problem will be greatly reduced at once.
But it must be more than a hope or a whish, more than knowing that it
is good for you. It must be actually a DECISION. If you truly make up your
mind that you will be cured, then you will have the strength to resist any
tendencies which you may have and any temptations which may come to you.
After you have made this decision, then observe the following specific
guidelines:
A Guide to Self-Control:
1. Never touch the intimate parts of your body except during
normal toilet processes.
2. Avoid being alone as much as possible. Find good company
and stay in this good company.
3.  Never
associate with other people having the same weakness. Don't
suppose that two of you will quit together, you never will.
You must get away from people of that kind. Just to be in
their presence will keep your problem foremost in your mind.
The problem must be taken OUT OF YOUR MIND for that is where
it really exists. Your mind must be on other and more
wholesome things.
4. When you bathe, do not admire yourself in a mirror. Never
stay in the bath more than five or six minutes -- just long
enough to bathe and dry and dress AND THEN GET OUT OF THE
BATHROOM into a room where you will have some member of your
family present.
5. When in bed, if that is where you have your problem for the
most part, dress yourself for the night so securely that you
cannot easily touch your vital parts, and so that it would
be difficult and time consuming for you to remove those
clothes. By the time you started to remove protective
clothing you would have sufficiently controlled your
thinking that the temptation would leave you.
6.  The purpose behind this suggestion is that you GET
YOUR MIND ON SOMETHING ELSE. You are the subject of your
thoughts, so to speak.
7. Never read pornographic material. Never read about your
problem. Keep it out of mind. Remember -- "First a
thought, then an act."
The thought pattern must be changed. You must not
allow this problem to remain in your mid. When you
accomplish that, you soon will be free of the act.
8. Put wholesome thoughts into your mind at all times. Read
good books -- Church books -- Scriptures -- Sermons of the
Brethern [sic, Cistern too?]. Make a daily habit of reading
at least one chapter of Scripture, preferably from one of the
four Gospels in the New Testament, or the Book of Mormon. The
four Gospels -- Matthew, Mark, Luke and John -- above
anything else in the Bible can be helpful because of their
uplifting qualities.
9. Pray. But when you pray, don't pray about this problem, for
that will tend to keep [it] in your mind more than ever.  KEEP IT _OUT_ of your mind!
The attitude of a person toward his problem has an affect [sic] on how
easy it is to overcome. It is essential that a firm commitment be made to
control the habit. As a person understands his reasons for the behavior, and
is sensitive to the conditions or situations that may trigger a desire for the
act, he develops the power to control it.
We are taught that our bodies are temples of God, and are to be clean
so that the Holy Ghost may dwell within us. Masturbation is a sinful habit
that robs one of the Spirit and creates guilt and emotional stress. It is not
physically harmful unless practiced in the extreme. It is a habit that is
totally self-centered, and secretive, and in no way expresses the proper use of
the procreative power given to man to fulfill eternal purposes. It therefore
separates a person from God and defeats the gospel plan.
This self-gratifying activity will cause one to lose his self-respect
testimony becomes weak, and missionary work and other Church callings become
burdensome, offerins.
To help in planning an effective program to overcome the problem a
brieation is given of how the reproductive organs in a young man function.
The testes in your body are continually producing hundreds of millions
of reproductive cells call _spermatozoa_. These are moved up a tube called the
_vas deferens_ to a place called the _ampulla_ where they are mixed with fluids
from two membranous pouches called _seminal vesicles_ and the _prostate gland_.
The resultant fluid is calleeminal vesicles are full a signa to the _central
nervous system_ indicating they are ready to benother, depending on such
thingsexercise, state of health, etc. everal times a week, for others
It is normal for the vesicles to be emptied occasionally at night
durise the emptying come from the cetral nervous system. Often an erotic dream
is experienced at the same time, and is a part of this normal process. nstead
ourse, the reproductive system is operating at a more rapid pace, trying to
keep up with the loss of semen. When he stops the habit, the body will
continue to produce ahis increased rate, for an indefese are not harmful and
are to be endured until the normal central nervous system pathway of rel
During this period of control several things can be done to make the pr
As one meets with his Priesthood Leader, a program for overcoming
masturbation can be implemented using some of t Remember it is essential that a
regur report program be agreed on, so progress can be recognized and failures
understood and eliminated.
Suggestions:
1. Pray daily, ask for the gifts of the Spirit, that which will
strengthen you against temptation. Pray fervently and out
lout when the temptations are the strongest.
2. Follow a program of vigorous daily exercise. The exercises
reduce emotional tension and depression and are absolutely
basic to the solution of this problem. Double your physical
activity when you feel stress increasing.
3. When the temptation to masturbate is strong, yell _STOP_ to
those thoughts as loudly as you can in your mind and then
recite a prechosen Scripture or sing an inspirational hymn.
It is important to turn your thoughts away from the selfish
need to indulge.
4. Set goals of abstinence, begin with a day, then a week,
month, year and finally commit to never doing it again.
Until you commit yourself to _never again_ you will always be
open to temptation.
5. Change in behavior and attitude is most easily achieved
through a changed self-image. Spend time every day
imagining yourself strong and in control, easily overcoming
tempting situations.
6. Begin to work daily on a self-improvement program. Relate
this plan to improving your Church service, to improving your
relationships with your family, God and others. Strive to
enhance your strengths and talents.
7. Be outgoing and friendly. Force yourself to be with others
and learn to enjoy working and talking to them. Use
principles of developing friendships found in books such as
_How to Win Friends and Influence People_ by Dale Carnegie.
8. Be aware of situations that depress you or that cause you to
feel lonely, bored, frustrated or discouraged. These
emotional states can trigger the desire to masturbate as a
way of escape. Plan in advance to counter these low periods
through various activities, such as reading a book, visiting
a friend, doing something athletic, etc.
9. Make a pocket calendar for a month on a small card. Carry
it with you, but show it to no one. If you have a lapse of
self control, color the day black. Your goal will be to
have _no black days_. The calendar becomes a strong visual
reminder of self control and should be looked at when you
are tempted to add another black day. Keep your calendar up
until you have at least three clear months.
10. A careful study will indicate you have had the problem at
certain times and under certain conditions. Try and recall,
in detail, what your particular times and conditions were.
Now that you understand how it happens, plan to break the
pattern through counter activities.
11. In the field of psychotherapy there is a very effective
technique called _aversion therapy_. When we associate
or think of something very distasteful with something which has
been pleasurable, but undesirable, the distasteful thought
and feeling will begin to cancel out that which was
pleasurable. If you associate something very distasteful
with your loss of self-control it will help you to stop the
act. For example, if you are tempted to masturbate, think
of having to bathe in a tub of worms, and eat several of
them as you do the act.
12. During your toileting and shower activities leave the
bathroom door or shower curtain partly open, to discourage
being alone in total privacy. Take cool brief showers.
13. Arise immediately in the mornings. Do not lie in bed awake,
no matter what time of day it is. Get up and do something.
Start each day with an enthusiastic activity.
14. Keep your bladder empty. Refrain from drinking large
amounts of fluids before retiring.
15. Reduce the amount of spices and condiments in your food.
Eat as lightly as possible at night.
16. Wear pajamas that are difficult to open, yet loose and
not binding.
17. Avoid people, situations, pictures or reading materials that
might create sexual excitement.
18. It is sometimes helpful to have a physical object to use
in overcoming this problem. A Book of Mormon, firmly held in
hand, even in bed at night has proven helpful in extreme
cases.
19. In very severe cases it may be necessary to tie a hand to
the bed frame with a tie in order that the habit of
masturbating in a semi-sleep condition can be broken. This
can also be accomplished by wearing several layers of
clothing which would be difficult to remove while half
asleep.
20. Set up a reward system for your successes. It does not have
to be a big reward. A quarter in a receptacle each time you
overcome or reach a goal. Spend it on something which
delights you and will be a continuing reminder of your
progress.
21. Do not let yourself return to any past habit or attitude
patterns which were part of your problem. _Satan Never Gives
Up_. Be calmly and confidently on guard.  You can win this fight! The joy and
strength you will feel when you do will give your whole life
a radiant and spiritual glow of satisfaction and fulfillment.
---
Pornopolis |
Rotten |
Faces of Death |
Famous Nudes
|


|
DistributedRobotWorld
|
#include <WidgetDebugTraceFunction.hpp>
Public Member Functions | |
| WidgetDebugTraceFunction (Application::LogTextCtrl *aLogTextCtrl) | |
| virtual void | trace (const std::string &aText) |
| Public Member Functions inherited from Base::DebugTraceFunction | |
| virtual | ~DebugTraceFunction () |
| Application::WidgetDebugTraceFunction::WidgetDebugTraceFunction | ( | Application::LogTextCtrl * | aLogTextCtrl | ) |
| aLogTextCtrl | The TextCtrl derived class that will receive the trace string as message |
| useFile | If true the trace will also be logged in the file "guitrace.log". |
|
virtual |
| aText | The text that will be send to the final trace destination. |
Implements Base::DebugTraceFunction.


process.Rmd
Working notes for building a risk assessment process using the Evaluator toolkit. This vignette details the basic flow used at some organizations to maintain reproducability of inputs and results. While other technologies and solutions may be employed, this workflow is intended to be easy to implement for users familiar with source control principles.
create_templates()
domains.csv
file to include the domains (and their abbreviations) which are appropriate for your risk domain and organization.survey.xlsx
spreadsheet to include the risk scenarios and the threats for each scenario which you wish to monitor on an ongoing basis.If using the sample workflow, you will have two subdirectories located under a parent evaluator
directory in your home folder. inputs
contains the qualitative scenarios and input data files, while results
stores the simulation results, including the summarized data files. Both directories together represent an analysis snapshot.
When using create_templates()
an run_analysis.R
file will be placed at the base of the evaluator
directory. A sample ultra-quick workflow looks like:
evaluator::create_templates()


widget_calendar - Calendar Megawidget
This package provides a calendar megawidget (snidget).
pathname get ?what?
Returns a part of the selected date or 'all'. The argument what selects the part. Valid values for what are: day, month, year and all. 'all' is the default and returns the complete date in the format given with -dateformat.
On creation of the calendar widget the following bindings are installed. When pressing a key the command is invoked and the textvariable is updated. updated.
Home - Move to the current date
Up - Move to week before current date
Down - Move to week after current date
Left - Move to day before current date
Right - Move to day after current date
Control-Left - Move to month before current date
Control-Right - Move to month after current date
Control-Up - Move to year before current date
Control-Down - Move to year after current date
package require widget::calendar ; # or widget::all set t [widget::calendar .t] pack $t -fill x -expand 1
This document, and the package it describes, will undoubtedly contain bugs and other problems. Please report such in the category widget::calendar of the Tklib Trackers. Please also report any ideas for enhancements you may have for either package and/or documentation.
Widget


gawibawibo module¶
-
gawibawibo.
anjuncoding
()[source]¶ This function returns index value as int with safe coding Currently, In this 1.0 version, input gayui,bayui,bo as index int number
it will return index value
- Args:
- None
- Returns:
return int value. Return code:
0 -- 가위 1 -- 바위 2 -- 보
-
gawibawibo.
check
(comp, usr)[source]¶ This function will check who wins int comp and int usr is parameter as gawibawibo index, and each variable format is int; Args:
- comp (int): Integer computer response
- usr (int): Integer user response
- Returns:
return int value. Return code:
-1 -- Computer Wins 0 -- Draw Game 1 -- User Wins


1
2 and 3
4
5, 9 and 13
6
7
8
10
11
12
14, 15, and 16
A more complex table-within-a-table
Outer Table
An inner table showing a variety of headings and data items.
Inner Table
CORNER
Head1
Head2
Head3
Head4
Head5
Head6
A
Two Tall
Lists can be table data
Images can be table data
Two Wide
HTML Station
cell
no
border
little
table
Multiple
line
item
What did you think about the tables?


JavaScript has two scopes – global(Public) and local(Private). Any variable declared outside of a function belongs to the global scope, and is therefore accessible from anywhere in your code. Each function has its own scope, and any variable declared within that function is only accessible from that function and any nested functions.
const hello = 'Hello CSS-Tricks Reader!'
function sayHello () {
console.log(hello)
}
console.log(hello) // 'Hello CSS-Tricks Reader!'
sayHello() // 'Hello CSS-Tricks Reader!'
function sayHello () {
const hello = 'Hello CSS-Tricks Reader!'
console.log(hello)
}
sayHello() // 'Hello CSS-Tricks Reader!'
console.log(hello) // Error, hello is not defined
Imagine each function is someone's home. When you declared any variable outside of a function(global),it acted like you posted your info public. If you declared any variable within that function, it means you keep that info private, only accessible from the family members at home.And nested functions are like teenagers' rooms that their parents have no access to them but the teenagers do have access to their parents' house (lexical scoping).Sounds unfair, right? Hope you had ever used that privilege:)


| City | Salon Address | Contact number |
| Jabalpur | Shop No. 9, Sadar Main Marg, Opp. Spyker Showroom, Near Indian Coffee House, Sadar Bazar Cantt, Jabalpur, Madhya Pradesh 482 001 |<PHONE_NUMBER> /<PHONE_NUMBER> |
| Bhopal | Shop No. M-11, 138/42, 1st floor, Usha Preet Complex, Above CCD, Opp. Apex Bank, Malviya Nagar, Bhopal, Madhya Pradesh 462003 | 0755-4010004 |
| Indore | 1st Floor, GTC 181-182, Scheme No. 54 PU4, Behind C21 Mall & Malhar Mall, Vijay Nagar, Indore, Madhya Pradesh 452010 | 0731-4062500 |
| Raipur | Shop No.1, KOAS Plaza, Shankar Nagar, Next to Delhi Darbar Fine Dine, Opp. Gold’s Gym, Rajiv Nagar Road, Raipur Chattisgarh -492007 | 0771-6559888 |
| Ambikapur | First floor, Pandit Shiv Dhari Complex, Beside Maya Hotel, Din Dayal Chowk, Bramha Path Road, Dist Surguja, Ambikapur, Chhattisgarh 497001 |<PHONE_NUMBER> /<PHONE_NUMBER> |
| Delhi | Shop No. 1, C-782, Guru Virjanand Marg, Beside Giani Ice Cream, Near Federal Bank ATM, Block C, Vikaspuri, Delhi 110018 |<PHONE_NUMBER>2 /<PHONE_NUMBER>0 |
| Shop No. A-33, Block 17, Munshi Ram Sethi Marg, Opp. Grass Roots Play School, West Patel Nagar, Patel Nagar, New Delhi, Delhi 110008 |<PHONE_NUMBER> |


Home
Info
About
Northern Brewer Supply
☯ Info ☯
Beer Selection
Name*
What is your favorite Beer?
Do you Brew Yourself?
Yes
No