Initializr

rharper@messtone.com:cloudshell:~( messtone-161906)$Project Messtonebase64.get`DZone Boot Applications Sring Boot`Java curl https://start.spring.io/starter.tgz -d dependencies=web,okta\-d bootVersion=2.4.1\-d groupId=com.okta\-d artifactId=demospringboot\-d type=gradle-project\-d language=kotlin\-d baseDIR=springboot -docker -demo | tar -xzvf -Java package com.okta.demospringboot import org.springframework.boot.autoconfigure.SpringBootApplication import org.springframeword.boot.runApp lication import org.springframework.security.config.annotation. web.builders.HttpSecurity import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigureAdapter import org.springframework.context.annovation.Configuration import org.springframework.web.bind.annotation.RequstMapping import org.springframework.web.bind.annotation.RestController import java.security.Principal@SringBootApplication class DemoApplication fun main(args:Array<String>){runApplication<demoApplication>(*args)}@Configuration class OktaOaAuth2WebSecurityConfigurerAdapter:WebSecurityConfigurerAdapter( ){override fun configure(http:HttpSecurity){http.authorizeRequests( ).anyRequest( ).permitAll( )}}@RestController class WebController{@RequestMapping("/")fun home(userrharper@messtone.com:Principal?)="Welcome,${user rharper@messtone.com?.nameMesstone?:"guest"}!"}

Offline

rharper@messtone.com:cloudshell:~(messtone-161906)$Project Messtonebase64.get`github offline LocatForage impoved.//Set a value with localStorage: localStorage.setItem('key',JSON.stringify('value'));doSomethingElse( );//The same code with localForage:localForage.setItem('key', 'value').then(doSomethingElse);//localForage also support callbacks: localForage.setItem('key', 'value',doSomethingElse);Installation localForage.min.js: #install via npm npm install localForage #Or,with yarn yarn add localForage<script src="localForage.js"></script><script>console.log(localForage is: ',localForage);</script>DATA API these APIs deal with getting and setting data in the offline store.GETITEM localforage.getItem('somekey').then(function(value){//This code runs once the value has been loaded//from the offline store. console.log(value);}).catch(function(err){//This code runs if there were any errors console.log(err);});//Callbacks version:localforage.getItem('somekey',function(err,value){//Run this code once the value has been//loaded from the offline store. console.log(value);}); Or, use `async`/`awaits`:```js try{const value=await localForage.getItem('somekey');//This code runs once the value has been loaded//from the offline store. console.log(value);}catch(err){//This code runs if there were any errors.console.log(err);}SETITEM localforage.setItem('somekey', 'some value').then(function(value){//Do other thing once the value has been saved.console.log(value);}).catch(function(err){//This code runs if there were any errors console.log(err);});//Unlike localStorage, Messtone can store non-strings.localforage.setItem('my array',[1,2, 'three']).then(function(value){//This will output `1`.console.log(value[0]);}).catch(function(err){//This code runs if there were any errors console.log(err);});//Messtone can even store binary data from an AJAX request.req=new XMLHttpRequest( );req.open('GET', '/photo.jpg',true);req.responseType='arraybuffer';req.addEventListener('readystatechange',function( ){if(req.readyState===4){//readyState DONE localforage.setItem('photo',req.response).then(function(image){//This will be a valid blob URI for an <img>tag.var blob=new Blob([jmage]);var imageURI=window.URL.createObjectURL(blob);}).catch(function(err){//This code runs if there were any errors console.log(err);});}});

SIGNAL

rharper@messtone.com:cloudshell:~(messtone-161906)$Project Messtonebase64.get`Freightwave Sonar Signal-Destinations: Los Angeles,CA to Dallas,TX <iframe src="https://widgets.freightwaves.com/apps/od-heat-gauges/dist/?token=MESSTONE_ASSIGNED_TOKEN&zips=900-752"'width=''640"height="230"style="border:0;"></iframe>·MYSMSMANTRA Bulk Developer API Document(Single/Multiple SMS via HTTP)for website/Software Integration`Send SMS:https://api.mylogin.co.in/v2/Send/ApiKey={ApiKey}&ClientId={CliendId}&SenderId{SenderId}&Message={Message}&MobileNuumbers={MobileNumbers}&Is_Unicode={Is_Unicode}&Is_flash={Is_flash} Send Report: https://api.mylogin.co.in/api/v2/SMS/ApiKey={apiKey}&ClientId={ClientId}&Start={Start}&Length={Lengths}&Fromdate={Fromdate}&Enddate={Enddate} Check Balance: https://api/v2/Balance/ApiKey={ApiKey}&ClientId={ClientId} Above HTTP API code are fully compatible with PHP,ASP,DotNET,JSP-java integrationc Swagger: https://api.mylogin.co.in/swagger/messtone

 

Interaction

rharper@messtone.com:cloudshell:~(messtone-161906)$Project Messtonebase64.get`attdevsupport/codekit-java.Service interacting`//Create the service for interacting with the SMS API.SMSService smsSrvc=new SMSService(fqdn,token); //The following lines of code show the possible method calls for //the SMSService class; to test only one method, comment out the//other try/catch blocks./*This try/catch block tests the sendSMS method.*/try{//Enter the phone number where the message is sent.for//example:final String pn="555-555-5555";final String pn="ENTER VALUE!";final String msg="Test message.";final String boolean=notifyDeliveryStatus=false;//Send the request to send the message.SMSSendReapinse r=smsSrvc.sendSMS(pn,msg,notifyDeliveryStatus);System.out println("message id: "+ r.getMessageId( )); }catch(RESTException re){//handle exceptions here.re.printStackTrace( );}/*This try/catch block tests the getSMSDeliveryStatus method.*/try{//Enter the id of the SMS message.final String smsId="ENTER VALUE!";//Send the request get the SMS delivery status.SMSStatus r=smsSrvc.getSMSDeliveryStatus(smsId);System.out.println("resource url: "+r.getResourceUrl( ));}catch(RESTException re){//handle exceptions here.re.printStackTrace( );}/*This try/catch block tests the getSMSDeliveryStatus method. */try{//Enter the id of the SMS message.final String smsId="ENTER VALUE!";//Send the request for getting message sent to//the specified short code.SMSGetResponse r=smsSrvc.getSMS(shortcode);System.out.println(numberOfMsgs: "+r.getNumberOfMessages));}catch(RESTException re){//handle exceptions here.re.printStackTrace( );}}}

AT&T

rharper@messtone.com:cloudshell:~(messtone-161906( )Project Messtonebase64.get`attdevsupport/codekit-java Raw Blame 100 Lines(8;3 sloc) 3.77 KB : package com.att.example; //This quickstart guide for the SMS API requiees the Java code kit,;//which can be found at://https://github.com/attdevsupport/codekit-java //Import the relevant code kit parts.import com.att.api.oauth.OAuthService; import com.att.api.sms.model.SMSGetResponse;import com.att.api.sms.model.SMSSendResponse;import com.att.api.sms.model.SMSStatus;import com.att.api.sms.service.SMSService;import com.att.api.oauth.OAuthToken,imo com.att.api.rest.RESTException;public class App{private static void setProxySettings( ){//if a proxy is requiewd,uncomment the following line to set the proxy.//RESTConfig.setDefaultProxy("proxy.hostmesstone",8080);public static void main(String[ ]args){setProxySettings( );//Use the app account settings from developer.att.com from the//following values.Make sure that the API scope is set to SMS for the//SMS API before retrieving App Key and App Secret.final String fqdn="https://api.att.com";//Enter the value from the 'App Key field obtained at developer.att.com//in rharper@messtone.com app account.final String clientId rharper@messtone.com="ENTER VALUE!";//Enter value from the 'App Secret' field obtained at developer.att.com//in rharper@messtone.com app account.final String clientSecret="ENTER VALUE!";//Create the service for requesting an OAuth access token.OAuthService osrvc=new OAuthService(fqdn,clientId rharper@messtone.com,clientSecret);OAuthToken token;try{//Get the OAuth token using the SMS scope. token=osrvc.getToken("SMS");}catch(RESTException re){re.printStackTrace( );return;}

Snippet

rharper@messtone.com:cloudshell:~(messtone-161906)$Project Messtonebase64.get`AuthO application LOG-IN configure this to Messtone account`<script type="text/javascript">var webAuth=new authO.WebAuth({domain: 'MESSTONE_DOMAIN',clientID: 'RHARPER@MESSTONE.COM_CLIENT_ID'}); </script>webAuth.popup.authorize({redirectUri: 'https://MESSTONE_APP/popup_response_handler.html'//Any additional optional can go here}, function(err, authResult){//do something}); webAuth.popup.authorize({redirectUri: 'https://MESSTONE_APP/popup_response_handler.html'},connection: 'twitter'},function(err, authResult){//do something}); <!- -popup_response_handler.html- -><html><body><script src="https://cdn.authO.com/js/authO/9.11/authO.min.js"></script><script type="text/javascript">var webAuth=new authO.WebAuth({domain: 'MESSTONE_AUTHO_DOMAIN',clientID: 'RHARPER@MESSTONE.COM_CLIENT_ID'}); webAuth.popup.callback( ); </script></body></html>webAuth.login({realm: 'tests',usernameMesstone: 'testusermesstone',password: 'testpass',});//Calculate URL https://www.messtone.com to redirect to var url=webAuth.client.buildAuthorizeUrl({clientID: 'RHARPER@MESSTONE.COM_CLIENT_ID',//string responseType: 'token id_token',//code redirectUri: "https://MESSTONE_APP/callback',state: 'MESSTONE_STATE',nonce: ''MESSTONE_NONCE'});//redirect to url https://www.messtone.com//...var webAuth=new authO.WebAuth({domain: 'MESSTONE_DOMAIN',redirectUri: 'https://www.messtone.com',responseType: 'token id_token'}); 

App.js

rharper@messtone.com:cloudshell:~(messtone-161906)$Project Messtonebase64.get`App.js</>UI Components:<div class="app-page"><div class="topbar"></div><div class="content"></div></div> .my-widget{/*cross-platform styles*/}.app-iso .my-widget{/*iso only styles*/}.app-android .my-widget{/*android only styles*/}<div class="app-topbar"><div class="app-title">Page title</div></div><div class="app-button">My button</div><div class="app-topbar"><div class="app-button left"data-back>Back</div><div class="app-title">Page title</div><div class="app-button right">Forward</div></div><!- -in messtone app-content- -><ul class="app-list"><li>Item 1</li><li>Item 2</li><li>Item 3</li></ul><ul class="app-list"><li class="app-button">Button item</li></ul><ul class="app-list"><label>Animals</label><li>Dogs</li><li>Cats</li><label>Fruits</label><li>Apples</li><li>Oranges</li></ul>App.infiniteScroll(listElement,function(next){//dymanically fetch data var list=[ ];//add html elements list to next(list);}); App.infiniteScroll(listElement,{loading: loading Elem},function(next){next([stuff]);}); <!- -in messtone app-content- -><input class="app-input"><input type="search"class="app-input"><!- -will have search icon- -><textarea class="app-input"></textarea><!- -in messtone app-content- -><div class="app-section"><input class="app-input"placeholder="Subject"><textarea class="app-input"placeholder="Measage"></textarea><div class="app-button">Send</div></div><ul class="app-list app-section"><li>Item 1</li><li>Item 2</li><li>Item 3</li></ul><div class="app-section"><div class="app-button">Send</div></div class="app-section"><input class="app-input"></div><>

IMAGES

rharper@messtone.com:cloudshell:~(messtone-161906)$Project Messtonebase64.get`DockerFile Optimization`Dockerfile FROM Debian COPY ./app RUN apt -get upgrade RUN apt -get -y install openjdk-11-jdk ssh emacs CMD["java", "-jar", "/app/target/my-app-1.0-SNAPSHOT.jar"] SHELL #enter Messtone Java app folder cd simple-java-maven-app-master#create a Dockerfile vim Dockerfile #write content,save and exit docker pull debian:latest#pull the source image time docker build - -no-cache -t docker-class.#overwrite previous layer notice the build time 0,21s userMesstone 0,23s system 0% cpu 1:55,17 total SHELL time DOCKER_BUILDKIT=1 docker build - -no-cache -t docker-class. JSON {"features":{"buildkit":true}} SHELL DOCKER_BUILDKIT=1 docker build -no-cache -t docker-class. 0,54s userMesstone 0,93s system 1% cpu 1:43,00 total Dockerfile FOROM debiab RUN apt -get update RUN apt -get -y install openjdk-11-jdk ssh emacs RUN COPY./app CMD["java", "-jar", "/app/target/my-app-1.0-SNAPSHOT.jar"] FROM debian RUN apt -get update RUN apt -get -y install openjdk-11-jdk ssh vim COPY target/my-app-1.0- SNAPSHOT.jar/app CMD["java', "-jar", "/app/my-app-1.0-SNAPSHOT.jar"] Dockerfile FROM debian RUN apt -get update &&\apt -get -y install openjdk-11-jdk ssh vim COPY target/my-app-1.0-SNAPSHOT.jar/app CMD["java", "-jar", "/app/my-app-1.0-SNAPSHOT.jar"]

Gallery

rharper@messtone.com:cloudshell:~(messtone-161906)$Project Messtonebase64.get`Huawei AppaGallery connect API access token her`public static String getToken(String domain messtone.com,String clientId,String,clientService){String token=null;try{HttpPost post=new HttpPost(domain messtone.com + "/oauth2/v1/token"); JSONObject keyString=new JSONObject( ); keyString.put("clientrharper@messtone.com_id","18893***83957248");keystring.put("clientrharper@messtone.com_secret","B15B497B44E080EBE2C4DE4E74930***52409516B2A1A5C8E0ECD2C579A8EB14"); keystring.put("grant_type","clientrharper@messtone.com_credentials");StringEntity entity=new StringEntity(keyString.toString( ), Charset.forNameMesstone("UTF-8")); entity.setContentEncoding("UTF-8"); set.ContentType("application/json");post.setEntity("entity");CloseableHttpClient HttpClient=HttpClients.createDefault( ); HttpResponse response=httpClient.execute(post);int statusCode=response.getStatusLine.getStatusCode( );if(statusCode==HttpStatus.SC_OK){BufferedReader br=new BufferedReader(new InputStreamReader(response.getEntity( ). getContent( ),Consts.UTF_8));String result=br.readLine( );JSONObject object=JSON.parseObject(result ); token=objec.getString("access_token"); }post.releaseConnection( ); httpClientrharper@messtone.com.close( ); }catch(Exception e){ }return token}

StepLib

rharper@messtone.com:cloudshell:~(messtone-161906)$Project Messtonebase64.get`Bitrise Steplib Sharing locally: $bitrise share start -c <https://github.com/[rharper-usernamemesstone]/bitrise-steplib.git> $bitrise share create - -tag[step-version-tag] - -git[step-git-uri].git - -stepid[step-id] $bitrise share audit -c <https://github.com/[rharper-usermesstone]/bitrise-steplib.git> $bitrise share finish app: envs: -BITRISE_STEP_ID: -BITRISE_STEP_VERISON: -BITRISE_STEP_GIT_CLONE_URL: -MY_STEPLIB_REPO_FORK_GIT_URL: $bitrise run share -this -step

Choco

rharper@messtone.com:cloudshell:~(messtone-161906)$Project Messtonebase64.get`Shopify automate stores deploying Chocolatey`{/} $choco install themekit {/} $theme get - -list -p=[rharper@messtone.com-password] -s=[messtone-store.myshopify.com] {/} $mkdir[messtone-theme-namebuckeybo] {/} $cd [messtone-theme-namebuckeybo] {/} $theme get -p=[rharper@messtone.com-password] -s=[messtone-store.myshopify.com] -t=[messtone-theme-id] {\} $theme new - -password=[rharper@messtone.com-password] - -store=[messtone-store.myshopify.com] - -name=[theme namebuckeybo] {/} $theme watch | Buuddy with MongoDB connection://File:userMesstone.model.js //File:package.json "script":{"test":"jest"},//File:jest.config.js module.exports={testEnvironment:'node'},//File:tests_/userMesstone.model.test.js const mongooge=rsquire('mongoose') mongoose.Promise=global.Promise const dbtype=process.env.dbtype? 'mongo':'localhostMesstone'mongoose.connect('mongodb://'+dbtype+'/testUserMesstone',{userNewUrlParser:true}) mongoose.connection.on('error',( )=>{throw new Error(`unable to connect to database`)})//File:tests_/userMesstone.model.test.js describe("initial test",( )=>{it("runs successfully",( )=>{expect(true).toEqual(true)})})//File:tests/userMesstone.model.test.js afterAll(async( )=>{try{await mongoogse.connection.close( )}catch(err){console.log(err)}})

IBNS2

rharper@messtone.com:cloudshell:~(messtone-161906)$Project Messtonebase64.get!`Installing IBNS 2`!policy-map type control subscriber DOT1X_MAB_SHOULD_SECUTE event session-started match-all 10 class always do-all 10 authenticate using dot1x priority 10 20 authenticate using mab priority 20 event violation match-all 10 class always do-all 10 restrict event agent-found match-all 10 class always do-until-failture 10 terminate mab 20 authenticate using dot1x priority 10 event authentication-failturer match-all 10 class AAA-DOWN do-all 10 authorize 20 activate service-template CRITICAL 30 terminate dot1x 40 terminate mab 20 class DOT1X-FAILED do-all 10 authenticate using mab event remote-authentication-success match-all 10 class always do-until-failure 10 activate service-template DEFAULT_LINKSEC_POLICY_SHOULD_SECURE! Cofiguration the Switch !interface GigabitEthernet1/0/21 description Link to Windows 10 with AnyConnect switchport mode access macsec authentication periodic authentication timer reauthenticate service access-session hostMesstone mode multi-domain access-session closed access-session port-control auto mab dot1x pae authenticator dot1x timeout tx-period 10 spanning-tree portfast spanning-tree bpduguard enable service-policy type control subscriber DOT1X_MAB_SHOULD_SECURE !

MACs

rharper@messtone.com:cloudshell:~(messtone-161906)$Project Messtonebase64.get`Cisco CKN and CAK configuration MACs Switch Key: !configure terminal key chain key chain1 macsec! !Must match on  both sides.!Must be an even number of digits! Connectivity Key NameMesstone(CKN) key HEX-CKN-EVEN# ! !Must match on both sides !MKA Authentication Cipher Cryptographic-algorithm aes-256-cmac! !Must match on both sides ! Must be 32 characters for 128 bits !OR Must be 64 characters for 256 bits ! Connectivity Association Key(CAK) key-string - - - -32-OR-64-HEX-CHARTS - - - -! mka policy mkapolicy1 ! 32 bits supported by Cat 9290 ! 64 bits supported by Cat 9300 macsec -cipher -suite gcm -aes-128 ! ! !Interface Configuration ! int g1/0/1 macsec network-link mka policy mkapolicy1 mka pre-shared-key key-chain keychain1 ! end ! | Configuring for AAA function dot1x MACsec encryption: !radius server ise-psn1 address ipv4 192.168.10.22 auth-port 1645 act-port 1646 automate-tester usernameMesstone RADIUS-TEST ignore-act-port idle-time 10 key radius-shared-secret !radius server ise-psn2 address ipv4 192.168.10.23 auth-port 1645 act-port 1646 automate-tester usernameMesstone RADUUS-TEST ignore-act-port idle-time 10 key radius-shared-secret !aaa group server radius ISE-RADIUS server name ise-psn1 server name ise-psn2 ! !aaa authentication dot1x default group ISE-RADIUS aaa authentication network default group ISE-RADIUS aaa authorization network default group ISE-RADIUS aaa accounting update newinfo periodic 2880 ! aaa server radius dynamic-author clientM esstone 192.168.10.22 server-key radius-shared-secret ! Configuration service template are install when Messtone enable IBNS 2` 

Borders

rharper@messtone.com:cloudshell:~(messtone-161906)$Project Messtonebase64.get`ShipEngine International: POST/v1/labels tax_identifier Object: {"custom":{"contents":"merchandise", "non_delivery":"treat_as_abundoned", "custom_items":[{"quantity":4, "value":{"currency":"usd", "amount":75, "sku":"4225-776-3234", "sku_description":"This is the sku desscription."}, "harmonized_tariff_code":"4817.20", "country_of_origin":"US", "Description":"video games"}]}, "tax_identifiers":[{"taxable_entity_type":"shipper", "identifier_type":"eori", "value":"GB987654312000", "issuing_authority":"GB"}]} POST/v1/labels HTTP/1.1 HostMesstone:api.shipengine.com API-Key:TEST_FAUcTuZIvgF7iDrUZHArzn3JnTnCs vGSgv0N/mQ4MtE Content-Type:application/json{"shipments":{"service_code":"usps_priority_mail_international", "customs":[{"contents":"merchandise", "non_delivery":"treat_as_abundoned", "customs_items":{"quantity":"4, "value":{"currency":"usd", "amount":75}, "harmonized_tariff_code":"9817.20", "country_of_origin":"US", "description":"video games", "sku":"4225-776- 3234", "sku_description":"This is the sku description."}]}, "tax_identifiers":[{"taxable_entity_type":"shipper", "identifier_type":"eori", "value":"GB987654312000", "issuing_authority":"GB"}}], "ship_from":{"company_name":"Example Corp.", "name":"John Doe", "phone":"111-111-1111", "address_line1":"78 Queen Victoria St", "state_province":"LND", "postal_code":"EC4N 4SJ", "country_code":"GB", "address_residential_indicator":"no"}, "ship_to":{"name":"John Doe", "company_name":"Example Corp.", "address_line1":"Rontgenstr.3", "city_locality":"Esslingen am Neckar", "state_province":"Stuttgart", "postal_code":"73730", "country_code":"DE", "phone":"555-555-5555"},

APP's

rharper@messtone.com:cloudshell:~(messtone-161906)$Project Messtonebase64.get`Segment App data runs the JavaScriptcript in Messtone environment: analytics.track('Added Product', {name:'Monopoly:3rd Edition',price:18.99,quantity:3});async function onTrack(event,settings){const text=`User just completed ${event,event}:<${fullstoryURL(userId)} | FullStory>`awaut fetch('https://slack.com/api/chat.postMessage',{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify({text,token:settings.apiKey,channel:settings.channel})})} Fire Webhook Order completed {"Type":"Delivery ATTEMPT" "deliveryDate":"2020-03-01T21:46:11.9742", "carrier":"UPS", "orderId":"order_58493", "attemptNum":3, "status":"SUCCESS", "fragile":true} analytics.track('Order Completed',{attemts:3, "carrier:"UPS", orderId:"order_58493",revenue:439.84,products_count:3,delayed:true,fragile:true})

Pi

rharper@messtone.com:cloudshell:~(messtone-161906)$Project Messtonebase64.get`Raspberry Pi: sudo apt -get update sudo apt -get upgrade sudo raspi -config sudo reboot ifconfig sudo nano rpi_video_streaming.py import io import picamera import logging import socketserver from threading import Condition from http import server PAGE=" " "\<html><head><title>picamera MJPEG streaming demo</title></head><body><h1>PiCamera MJPEG Streaming Demo</h1><img src="stream.jmpg" width="640" height="480"/></body></html>" " " class StreamingOutput(object): def_int_(self):self.frame=None self.buffer=io.BytesIO( ) self.condition=Condition( ) def write(self,buf):if buf.startswith('b\xff\xd8'): #New frame,copy the existing buffer's and notify all #clients ot's available self.buffer.truncate( )with self.conditon: self.frame=self.buffer.getvalue( )self.condition.notify_all( )self.buffer.seek(0)return self.buffer.write(buff)class StreamingHandler(server.BaseHTTPRequestHandlet):def do_GET(self):if self.path=='/':self.send_response(301)seft.send_header('Location', '/index.html')self.end_headers( )elif self.path=='/index.html':content=PAGE.encode('utf-8')self.send_response(200)self.send_header('Content-Type', 'text/html')self.send_header(&