Snippets

Monil Gandhi Create Sub Dealer

Created by Monil Gandhi

File CreateSubdealer.php Added

  • Ignore whitespace
  • Hide word diff
+<?php
+use Braango\braangoapi\BraangonumbersApi;
+use Braango\braangomodel as model;
+use Braango\braangomodel\RequestHeader as rhdr;
+
+require_once (__DIR__ . '/../../vendor/autoload.php');
+
+/**
+ *
+ * @author braango
+ *        
+ *         Sample code showing how to create subDealer
+ *        
+ */
+
+// TEST auth token. Please contact
+// sales@braango.com to have one
+// created for you
+Braango\Configuration::getDefaultConfiguration()->setApiKey('auth_token', 'ISNWF0P30WM0CMK');
+
+$api_instance = new Braango\braangoapi\PersonnelsApi();
+
+// Braango\braangomodel\SubDealerRequestInput |
+$subDealerRequestInput = new \Braango\braangomodel\SubDealerRequestInput();
+
+$typeAdfCRMEmail = FALSE;
+
+
+/*
+ * { "api_key": "ISNGvAzwuy4X7vAqrtV", "id": "any value",
+ * "account_type": "partner" }
+ */
+$hdr = new rhdr();
+
+// Set the account type to partner for
+// virtual dealer and partner hosted
+// accounts
+$hdr->setAccountType("partner");
+
+// dealer_api_key returned
+// when partner_dealer was created
+$hdr->setApiKey("ISNMdzuNiKG7jhl9d9v");
+
+// ID that will be reflected back
+$hdr->setId("create-sub-dealer-s2002");
+
+$subDealerRequestInput->setHeader($hdr);
+
+// Subdealer request body
+$subDealerBody = new model\SubDealerBody();
+
+// REQUIRED FIELDS
+
+// Required field . Used for
+// SMS login in to the UI
+// For Braango Enterprise, this is don't care
+// unless partner implements UI with SMS login
+$subDealerBody->setSmsLogin(FALSE);
+
+$subDealerBody->setDealerName("test dealer s2002");
+
+// Create SubDealer creates full functional
+// braango personnel with added capability
+// Provide personnel name that is typical
+// contact point
+$subDealerBody->setPersonnelName("name of manager");
+
+/*
+ * This is a user name created while signing this personnel up.
+ * Typically this user name can be used to log into the braango UI.
+ * However for whitelabel product, it is expected that this will be used
+ * for single signon with respect to dealer account on partner system.
+ * i.e. it is expected that partner will pass on the same user name that
+ * dealer has on its system to give seamless integration experience.
+ */
+$subDealerBody->setUserName("subdealer2002r1");
+
+/*
+ * Password will be encrypted with SHA-25 and base64 encoded and stored
+ * internally within the braango system. pattern:
+ * ^(?=^.{6,10}$)(?=.*\d)(
+ * ?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$%^&*()_+}{&quot
+ * ;:;'?/>.<,])(?!.*\s).*$
+ *
+ * Used for single sign on. needs to 6-10 characters with one capital,
+ * one numberal and one special character
+ */
+$subDealerBody->setPassword("test1T$");
+
+/*
+ * pattern: ^(?:Starter|Small Business|Rooftop|Franchise)$
+ *
+ * Every sub_dealer needs to have braango package
+ */
+
+$subDealerBody->setPackage("Small Business");
+
+// Required field. Indicates the
+// ID for this business
+// All internal resources, leads, personnel,
+// braango number are associated with this id
+// Needs to be unique within Braango system
+//
+// Will return error if there is clash
+//
+// Recommended to use unique naming convention
+// or UUID string
+$subDealerBody->setSubDealerId("subdealers2002");
+
+$subDealerBody->setEmail("s2002r1@subdealer2002.com");
+
+// If email specified is that for
+// CRM email (ADF XML compliant)
+$subDealerBody->setTypeAdfCrm($typeAdfCRMEmail);
+
+/*
+ * Number where dealer's root account can be reached via SMS
+ * for leads
+ *
+ * pattern:^\(?(\d{3})\)?[- ]?(\d{3})[- ]?(\d{4})$
+ */
+$subDealerBody->setPhoneNumber('4089763433');
+
+/*
+ * Number where dealer's root account can be reached via SMS
+ * for leads
+ *
+ * pattern:^\(?(\d{3})\)?[- ]?(\d{3})[- ]?(\d{4})$
+ */
+$subDealerBody->setSmsNumber('4089763433');
+
+// List of dealer banners. Braango will
+// randomly choose one when sending
+// message to dealer via SMS
+//
+$dealerBanners = array(
+    "s2002db1"
+);
+$subDealerBody->setDealerBanners($dealerBanners);
+
+// List of client banners. Braango
+// will randomly choose one when
+// sending dealer messages to client
+$clientBanners = array(
+    's2002cb1'
+);
+$subDealerBody->setClientBanners($clientBanners);
+
+// List of dealer footers. Braango will
+// randomly choose one when sending
+// message to dealer via SMS
+//
+
+$dealerFooters = array(
+    's2002df1'
+);
+$subDealerBody->setDealerFooters($dealerFooters);
+
+// List of client footers. Braango
+// will randomly choose one when
+// sending dealer messages to client
+$clientFooters = array(
+    's2002cf1'
+);
+$subDealerBody->setClientFooters($clientFooters);
+
+// List of supervisor banners. Braango
+// will randomly choose one when
+// sending messages to supervisor
+$supervisorBanners = array(
+    's2002sb1'
+);
+$subDealerBody->setSupervisorBanners($supervisorBanners);
+
+// List of supervisor footers. Braango
+// will randomly choose one when
+// sending messages to supervisor
+$supervisorFooters = array(
+    's2002sf1'
+);
+$subDealerBody->setSupervisorFooters($supervisorFooters);
+
+// SubDealer's can create unique groups
+// that personnel can subscribe to
+$subDealerBody->setGroup('s2002g');
+
+$subDealerRequestInput->setBody($subDealerBody);
+
+try {
+    $result = $api_instance->createSubDealer($subDealerRequestInput);
+    if ($result != null) {
+        // Extract out response hdr and bdy
+        $rspHdr = $result->getHeader();
+        
+        if ($requestHdr = ! null) {
+            $rspId = $rspHdr->getId();
+            $braangoRequestId = $rspHdr->getIsnRequestId();
+            print_r("Response ID = " . $rspId . ", API Request Id = " . $braangoRequestId . "\n");
+        }
+        
+        $rspBdy = $result->getBody();
+        if ($rspBdy != null) {
+            $status = $rspBdy->getStatus();
+            
+            // Typically this value should be always SUCCESS else exception will be thrown
+            // Sometimes, this can be WARNING to indicate if any resource conflicted or not
+            // In case of SUCCESS or WARNING, resources are always created (excepting warned sub-resources)
+            print_r("Status = " . $status . "\n");
+            
+            $salesPersonId = $rspBdy->getData()->getSalesPersonId();
+            
+            print_r("SUCCESS : SalespersonID = " . $salesPersonId);
+        }
+    }
+} catch (Exception $e) {
+    echo 'Exception when calling PersonnelsApi->createSubDealer: ', $e->getMessage(), PHP_EOL;
+}
+?>
HTTPS SSH

You can clone a snippet to your computer for local editing. Learn more.