mirror of
https://github.com/superseriousbusiness/gotosocial
synced 2024-12-18 00:33:11 +00:00
87cf621e21
Remote instances are now dereferenced when they post to an inbox on a GtS instance. Dereferencing will be done first by checking the /api/v1/instance endpoint of an instance. If that doesn't work, /.well-known/nodeinfo will be checked. If that doesn't work, only a minimal representation of the instance will be stored. A new field was added to the Instance database model. To create it: alter table instances add column contact_account_username text;
39 lines
1.4 KiB
Go
39 lines
1.4 KiB
Go
package gtsmodel
|
|
|
|
import "time"
|
|
|
|
// Instance represents a federated instance, either local or remote.
|
|
type Instance struct {
|
|
// ID of this instance in the database
|
|
ID string `pg:"type:CHAR(26),pk,notnull,unique"`
|
|
// Instance domain eg example.org
|
|
Domain string `pg:",notnull,unique"`
|
|
// Title of this instance as it would like to be displayed.
|
|
Title string
|
|
// base URI of this instance eg https://example.org
|
|
URI string `pg:",notnull,unique"`
|
|
// When was this instance created in the db?
|
|
CreatedAt time.Time `pg:"type:timestamp,notnull,default:now()"`
|
|
// When was this instance last updated in the db?
|
|
UpdatedAt time.Time `pg:"type:timestamp,notnull,default:now()"`
|
|
// When was this instance suspended, if at all?
|
|
SuspendedAt time.Time
|
|
// ID of any existing domain block for this instance in the database
|
|
DomainBlockID string `pg:"type:CHAR(26)"`
|
|
// Short description of this instance
|
|
ShortDescription string
|
|
// Longer description of this instance
|
|
Description string
|
|
// Terms and conditions of this instance
|
|
Terms string
|
|
// Contact email address for this instance
|
|
ContactEmail string
|
|
// Username of the contact account for this instance
|
|
ContactAccountUsername string
|
|
// Contact account ID in the database for this instance
|
|
ContactAccountID string `pg:"type:CHAR(26)"`
|
|
// Reputation score of this instance
|
|
Reputation int64 `pg:",notnull,default:0"`
|
|
// Version of the software used on this instance
|
|
Version string
|
|
}
|