Nauseating Pumpkin Mush

    @capacitor-community/uxcam
    TypeScript icon, indicating that this package has built-in type declarations

    0.0.3 • Public • Published


    UXCam

    @capacitor-community/uxcam

    Capacitor plugin for UXCam and FullStory analytics. It uses UXCam for Android and iOS platforms and FullStory for Web/PWA.


    Maintainers

    Maintainer GitHub Social
    Luis Alaguna SalahAdDin

    Installation

    Install the package from the repository(by now):

    # npm install @capacitor-community/uxcam
    npm install SalahAdDin/capacitor-uxcam#dist
    ionic cap update && ionic cap copy && ionic cap sync 

    On iOS, no further steps are needed.

    On Android:

    • Add the UXCam maven repository to your projects build's graddle script:

      maven {
      	url 'https://sdk.uxcam.com/android/'
      }
    • Register the plugin in your main activity:

    import com.getcapacitor.community.uxcam.UXCamPlugin;
    
    public class MainActivity extends BridgeActivity {
      @Override
      public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    
        // Initializes the Bridge
        this.init(savedInstanceState, new ArrayList<Class<? extends Plugin>>() {{
          // Additional plugins you've installed go here
          // Ex: add(TotallyAwesomePlugin.class);
          add(UXCamPlugin.class);
        }});
      }
    }

    Configuration

    No configuration is required for this plugin.

    Supported methods

    The following are the UXCam implemented methogs on the plugin, for web plugin, FullStory methods are used:

    Name Android iOS Web
    startWithKey
    setUserIdentity
    setUserProperty
    setMultiSessionRecord
    getEnabledMultiSessionRecord
    logEvent
    tagScreenName
    setAutomaticScreenNameTagging
    stopSession

    You can find the full list of UXCam methods here and FullStory methods here.

    Usage

    // Must import the package once to make sure the web support initializes
    import "@capacitor-community/uxcam"
    import { Plugins } from "@capacitor/core"
    import { LogEventProperty, UserProperty } from "@capacitor-community/uxcam"
    
    const { UXCamPlugin } = Plugins
    
    /**
     * Platform: Web/Android/iOS
     * Logs and event.
     * @param eventName: String - Event's name.
     * @param properties?: { [key: string]: string | number } - a optional set of event's properties to include in the log.
     * @returns void
     * https://help.uxcam.com/hc/en-us/articles/115000969072-Send-Events-and-Properties
     */
    UXCamPlugin.logEvent(options: LogEventProperty)
    
    /**
     * Platform: Android/iOS
     * Start the UXCam service with the API key.
     * @param UXCamKey: String - UXCam's API key.
     * @returns void
     * https://help.uxcam.com/hc/en-us/articles/115001868272
     */
    UXCamPlugin.startWithKey(options: { UXCamKey: string })
    
    /**
     * Platform: Web/Android/iOS
     * Set the user's identifier(a name)
     * @param userIdentity: String - User's identifier.
     * @returns void
     * https://help.uxcam.com/hc/en-us/articles/115000968992-Send-Additional-User-Information
     */
    UXCamPlugin.setUserIdentity(options: { userIdentity: string })
    
    /**
     * Platform: Web/Android/iOS
     * Set the user's properties.
     * @param properties: { [key: string]: string | number } - a set of user's properties(as email, phone, age, etc.).
     * @returns void
     * https://help.uxcam.com/hc/en-us/articles/115000968992-Send-Additional-User-Information
     */
    UXCamPlugin.setUserProperty(options: UserProperty)
    
    /**
     * Platform: Android/iOS
     * Enables/disables the multisession record for users.
     * @param recordMultipleSessions: boolean - whether enables multi-session record per user or not.
     * @returns void
     * https://help.uxcam.com/hc/en-us/articles/115000968972-Control-Recording
     */
    UXCamPlugin.setMultiSessionRecord(options: { recordMultipleSessions: boolean })
    
    /**
     * Platform: Android/iOS
     * Get the multisession record status.
     * @param
     * @returns Promise<{ value: boolean }> - whether multi-session record per user is enabled or not.
     * https://help.uxcam.com/hc/en-us/articles/115000968972-Control-Recording
     */
    UXCamPlugin.getEnabledMultiSessionRecord()
    
    /**
     * Platform: Android/iOS
     * Set the name for a screen view in the application, it requires to dissable the automatic screen name tagging.
     * @param screenName: String - Screen view's name.
     * @returns void
     * https://help.uxcam.com/hc/en-us/articles/360043007412-Tag-Screen-Name
     */
    UXCamPlugin.tagScreenName(options: { screenName: string })
    
    /**
     * Platform: Android/iOS
     * Enables/disables the automatic screen name tagging.
     * @param recordMultipleSessions: boolean - whether enables automatic screen name tagging or not.
     * @returns void
     * https://help.uxcam.com/hc/en-us/articles/360043007412-Tag-Screen-Name
     */
    UXCamPlugin.setAutomaticScreenNameTagging(options: { enable: boolean }): Promise<void>;
    
    /**
     * Platform: Web/Android/iOS
     * Stops the session record.
     * @param 
     * @returns void
     * https://help.uxcam.com/hc/en-us/articles/115000968972-Control-Recording
     */
    UXCamPlugin.stopSession(): Promise<void>

    Further info

    Install

    npm i @capacitor-community/uxcam

    DownloadsWeekly Downloads

    5

    Version

    0.0.3

    License

    MIT

    Unpacked Size

    130 kB

    Total Files

    41

    Last publish

    Collaborators

    • ryaa
    • dallasjames
    • tafelnl
    • thegnuu
    • pbowyer
    • capcombot
    • jcesarmobile
    • maxlynch
    • mhartington
    • dotnetkow
    • it_mike_s
    • byrds
    • rdlabo
    • priyankpatel
    • dwieeb
    • stewan
    • arielhernandezmusa
    • jeepq
    • start9keagan
    • boosten
    • nklayman
    • ihadeed
    • danielprr
    • ckgaparajita
    • jpender
    • nhyatt
    • pwespi
    • epicshaggy
    • thomasvidas
    • robingenz
    • diachedelic
    • johnborges
    • tobyas
    • elylucas
    • larsmikkelsen
    • giodimiliaionic
    • brownoxford
    • mrbatista
    • bazuka5801
    • hemang