anchor.diff:      return responseJson;
     }
   
  +  Future<Map<String, dynamic>> deleteMobileDevice({
  +    @required String connectionProtocol,
  +    @required String connectionDomain,
  +    @required String connectionPath,
  +    @required String deviceToken,
  +    @required String deviceId,
  +  }) async {
  +    final responseJson = await connectionHandler(
  +      primaryConnectionProtocol: connectionProtocol,
  +      primaryConnectionDomain: connectionDomain,
  +      primaryConnectionPath: connectionPath,
  +      deviceToken: deviceToken,
  +      cmd: 'delete_mobile_device',
  +      params: {
  +        'device_id': deviceId,
  +      },
  +    );
  +
  +    return responseJson;
  +  }
  +
     /// Returns a Map of the decoded JSON response from
     /// the `get_activity` endpoint.
     ///
  
positive.code:       tautulliId: tautulliId,
        cmd: 'get_geoip_lookup',
        params: {'ip_address': ipAddress},
      );
  
      return responseJson;
    }
  
    /// Returns a Map of the decoded JSON response from
    /// the `get_recently_added` endpoint.
    ///
    /// Throws a [JsonDecodeException] if the json decode fails.
    Future<Map<String, dynamic>> getRecentlyAdded({
      @required String tautulliId,
      @required int count,
      int start,
      String mediaType,
      int sectionId,
    }) async {
      Map<String, String> params = {'count': count.toString()};
  
      if (start != null) {
        params['start'] = start.toString();
      }
      if (isNotEmpty(mediaType)) {
        params['media_type'] = mediaType;
      }
      if (sectionId != null) {
        params['section_id'] = sectionId.toString();
      }
  
      final responseJson = await connectionHandler(
        tautulliId: tautulliId,
        cmd: 'get_recently_added',
        params: params,
      );
  
      return responseJson;
    }
  
    Future<Map<String, dynamic>> getUserNames({
      @required String tautulliId,
    }) async {
      final responseJson = await connectionHandler(
        tautulliId: tautulliId,
        cmd: 'get_user_names',
      );
  
      return responseJson;
    }
  
    /// Returns a Map of the decoded JSON response from
    /// the `get_users_table` endpoint.
    ///
    /// Throws a [JsonDecodeException] if the json decode fails.
    Future<Map<String, dynamic>> getUsersTable({
      @required String tautulliId,
      int grouping,
      String orderColumn,
      String orderDir,
      int start,
      int length,
      String search,
    }) async {
      Map<String, String> params = {};
  
      if (grouping != null) {
        params['grouping'] = grouping.toString();
      }
      if (orderColumn != null) {
        params['order_column'] = orderColumn;
      }
      if (orderDir != null) {
        params['order_dir'] = orderDir;
      }
      if (start != null) {
        params['start'] = start.toString();
      }
      if (length != null) {
        params['length'] = length.toString();
      }
      if (search != null) {
        params['search'] = search;
      }
  
      final responseJson = await connectionHandler(
        tautulliId: tautulliId,
        cmd: 'get_users_table',
        params: params,
      );
  
      return responseJson;
  
negative.code:     return responseJson;
    }
  
    Future<Map<String, dynamic>> terminateSession({
      @required String tautulliId,
      @required String sessionId,
  