1.0.0 • Published 2 years ago

react-native-code7-boteria-widget v1.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

Boteria Mobile 🤖

Uma maneira ágil e eficiente de integrar a funcionalidade de chat (Boteria) em seus aplicativos React Native


Instalação

yarn add -D react-native-code7-boteria-widget react-native-encrypted-storage@4.0.3 react-native-fs@2.20.0 react-native-document-picker@8.1.3 react-native-sound@0.11.2 react-native-video@5.2.1 axios@1.2.1 @miblanchard/react-native-slider@2.1.0

Importação

import { View } from 'react-native';
import { Code7Boteria } from 'react-native-code7-boteria-widget';

// ...

return (
  <View>
    <Code7Boteria botId="botId" />
  </View>
);

Exemplo para envio de parãmetros adicionais no início da conversa:

const params = { foo: 'bar' };

return (
  <View>
    <Code7Boteria
      botId="botId"
      params={params}
    />
  </View>
)

Também é possível substituit o widget flutuante por um componente pressionável de sua aplicação ao passá-lo como children, por exemplo:

return (
  <View>
    <Code7Boteria botId="botId">
      <Button title="Abrir o chat" />
    </Code7Boteria>
  </View>
)

Ou então:

return (
  <View>
    <Code7Boteria
      botId="botId"
      children={<Button title="Abrir o chat" />}
    >
  </View>
)

Lembre-se de substituir 'botId' pelo identificador correto do seu BOT.

Para versões React Native 0.64.0 até 0.70

yarn add @react-native/normalize-color

Acesso ao Ambiente de Homologação

Para acessar o ambiente de homologação do aplicativo, você precisará passar o parâmetro staging como true. Por exemplo:

<Code7Boteria staging botId="MEU_ID" />

Ao fazer isso, o ambiente do aplicativo será redirecionado para a homologação ao invés do ambiente padrão de produção.

Configuração react-native-video

android/settings.gradle

include ':react-native-video'
project(':react-native-video').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-video/android-exoplayer')

android/gradle.properties

android.useAndroidX=true
android.enableJetifier=true

MyApplication.java No topo, onde estão as importações:

import com.brentvatne.react.ReactVideoPackage;

Adicione a classe ReactVideoPackage à sua lista de pacotes exportados.

packages.add(new ReactVideoPackage());

Suporte para GIFs

android/app/build.gradle

implementation "com.facebook.fresco:animated-base-support:1.3.0"
implementation "com.facebook.fresco:animated-gif:2.5.0"

Suporte para Notificações

android/app/src/main/AndroidManifest.xml

Dentro da tag manifest, adicione:

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

Dentro da tag application, adicione:

<provider
  android:name="androidx.core.content.FileProvider"
  android:authorities="${applicationId}.provider"
  android:exported="false"
  android:grantUriPermissions="true">
  <meta-data
    android:name="android.support.FILE_PROVIDER_PATHS"
    android:resource="@xml/file_paths" />
</provider>

android/app/src/main/res/xml/file_paths.xml

<paths xmlns:android="http://schemas.android.com/apk/res/android">
    <files-path name="my_files" path="." />
    <external-path name="external_files" path="." />
    <external-files-path name="external_files" path="." />
    <root-path name="root" path="." />
    <root-path name="external_storage_root" path="/storage/" />
    <root-path name="external_downloads" path="/storage/emulated/0/Downloads/" />
</paths>

Parâmetros

{
  foo: 'bar'
}
<MyComponent />
{
  title: 'Bot title',
  settings: {
    botFab: 'https://my-domain/my-icon.png',
    mainColor: '#FF0000',
    mainTextColor: '#00FF00',
    secondaryColor: '#000000',
    secondaryTextColor: '#0000FF',
  },
}
0.1.52

2 years ago

0.1.53

2 years ago

1.0.0

2 years ago

0.1.54

2 years ago

0.1.55

2 years ago

0.1.56

2 years ago

0.1.50

2 years ago

0.1.51

2 years ago

0.1.49

2 years ago

0.1.41

2 years ago

0.1.42

2 years ago

0.1.43

2 years ago

0.1.44

2 years ago

0.1.45

2 years ago

0.1.46

2 years ago

0.1.47

2 years ago

0.1.48

2 years ago

0.1.40

2 years ago

0.1.38

2 years ago

0.1.39

2 years ago

0.2.1

2 years ago

0.2.6

2 years ago

0.2.3

2 years ago

0.2.2

2 years ago

0.2.5

2 years ago

0.1.31

2 years ago

0.1.10

2 years ago

0.1.33

2 years ago

0.1.11

2 years ago

0.1.34

2 years ago

0.1.12

2 years ago

0.1.35

2 years ago

0.1.13

2 years ago

0.1.36

2 years ago

0.1.14

2 years ago

0.1.15

2 years ago

0.1.27

2 years ago

0.1.28

2 years ago

0.1.20

2 years ago

0.1.21

2 years ago

0.1.23

2 years ago

0.1.24

2 years ago

0.1.26

2 years ago

0.1.16

2 years ago

0.1.17

2 years ago

0.1.18

2 years ago

0.1.19

2 years ago

0.1.9

2 years ago

0.1.8

2 years ago

0.1.7

2 years ago

0.1.6

2 years ago

0.1.5

2 years ago

0.1.4

3 years ago

0.1.3

3 years ago

0.1.2

3 years ago

0.1.1

3 years ago

0.1.0

3 years ago